我在 GO 中有一个后端服务器运行在
localhost:8081
上,暴露了几个端点。这些端点可以通过 CURL、Postman 等请求很好地访问...
我正在尝试构建一个在开发默认端口上运行的 SvelteKit 前端应用程序
localhost:5137
。在 +page.server.ts
文件中,我有一个加载函数试图联系 localhost:8081
上的端点之一,但它不起作用。我只得到这个错误:
TypeError: fetch failed
...
cause: Error: connect ECONNREFUSED 127.0.0.1:8081
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1161:16) {
errno: -4078,
code: 'ECONNREFUSED',
syscall: 'connect',
address: '127.0.0.1',
port: 8081
}
我的
+page.server.svelte
- 加载函数的内容如下所示:
export async function load({fetch}) {
const res = await fetch('http://localhost:8081/api/...');
return await res.json();
}
甚至在 hooks.server.svelte 文件中检查并添加了缺失的原始标头:
export const handleFetch: HandleFetch = async({request, fetch, event}) => {
request.headers.set('Origin', event.url.origin);
return fetch(request)
};
但我似乎无法摆脱这个错误。来自外部公共 api 的其他端点运行良好,我可以从中检索数据。
如果有人有任何想法,将不胜感激。我都被谷歌搜索过了……
这里是使用的依赖列表:
NPM v9.6.4
node v16.13.0
“@sveltejs/adapter-auto”:“^2.0.0”,
“@sveltejs/kit”:“^1.5.0”,
"@typescript-eslint/eslint-plugin": "^5.45.0",
"@typescript-eslint/parser": "^5.45.0",
“eslint”:“^8.28.0”,
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-svelte3": "^4.0.0",
“更漂亮”:“^2.8.0”,
“更漂亮的插件”:“^2.8.1”,
“苗条”:“^3.54.0”,
“苗条检查”:“^3.0.1”,
“tslib”:“^2.4.1”,
“打字稿”:“^4.9.3”,
“邀请”:“^4.0.0”,
“vitest”:“^0.25.3”
我期望端点可以像任何其他外部公共 API 一样访问并返回预期的数据,所以我也: