@@ -11,7 +11,10 @@ import {
1111 joinPaths ,
1212 trimPath ,
1313} from '@tanstack/router-core'
14- import { attachRouterServerSsrUtils } from '@tanstack/router-core/ssr/server'
14+ import {
15+ attachRouterServerSsrUtils ,
16+ getOrigin ,
17+ } from '@tanstack/router-core/ssr/server'
1518import { runWithStartContext } from '@tanstack/start-storage-context'
1619import { getResponseHeaders , requestHandler } from './request-response'
1720import { getStartManifest } from './router-manifest'
@@ -94,19 +97,7 @@ export function createStartHandler<TRegister = Register>(
9497 request ,
9598 requestOpts ,
9699 ) => {
97- function getOrigin ( ) {
98- const originHeader = request . headers . get ( 'Origin' )
99- if ( originHeader ) {
100- try {
101- new URL ( originHeader )
102- return originHeader
103- } catch { }
104- }
105- try {
106- return new URL ( request . url ) . origin
107- } catch { }
108- return 'http://localhost'
109- }
100+ const origin = getOrigin ( request )
110101
111102 // Patching fetch function to use our request resolver
112103 // if the input starts with `/` which is a common pattern for
@@ -121,7 +112,7 @@ export function createStartHandler<TRegister = Register>(
121112
122113 if ( typeof input === 'string' && input . startsWith ( '/' ) ) {
123114 // e.g: fetch('/api/data')
124- const url = new URL ( input , getOrigin ( ) )
115+ const url = new URL ( input , origin )
125116 return resolve ( url , init )
126117 } else if (
127118 typeof input === 'object' &&
@@ -130,7 +121,7 @@ export function createStartHandler<TRegister = Register>(
130121 input . url . startsWith ( '/' )
131122 ) {
132123 // e.g: fetch(new Request('/api/data'))
133- const url = new URL ( input . url , getOrigin ( ) )
124+ const url = new URL ( input . url , origin )
134125 return resolve ( url , init )
135126 }
136127
@@ -163,12 +154,11 @@ export function createStartHandler<TRegister = Register>(
163154 initialEntries : [ href ] ,
164155 } )
165156
166- const origin = router . options . origin ?? getOrigin ( )
167157 router . update ( {
168158 history,
169159 isShell,
170160 isPrerendering,
171- origin,
161+ origin : router . options . origin ?? origin ,
172162 ...{
173163 defaultSsr : startOptions . defaultSsr ,
174164 serializationAdapters : startOptions . serializationAdapters ,
0 commit comments