向外部 API 发出 POST 请求时的 NUXT 重定向问题
NUXT Redirect issue when making a POST request to external API
我有一个在 Nuxt 中构建的表单。我正在尝试将其提交给外部 API。预期的响应是 JWT 令牌。
async login() {
const res = await this.$axios.$post(`/api/token`, {
username: this.username,
password: this.password
}, this.headers )
console.log(res)
}
尝试直接调用 API 时出现 CORS 错误,因此我在 nuxt.confix.js.
中使用了代理设置
...
modules: [
'@nuxtjs/axios',
'@nuxtjs/proxy'
],
axios: {
baseURL: '/',
proxy: true
},
proxy: {
'/api/': { target: 'https://<apiurl>.com/', changeOrigin: true }
},
...
现在,当我检查网络选项卡时,它显示了一个 301 重定向,但是在 post 请求中发送的数据被丢弃了,它向 API 发出了一个获取请求returns 一个 405 错误(因为它期望一个 POST 带有数据的请求而不是一个空的 GET 请求)。
如何使用 NUXT 向外部 API 发出 POST 请求?这是一个选择吗?
我尝试更改 changeOrigin: false,这似乎解决了这个问题,但它抛出了一个 500 服务器错误和一个 npm 错误
ERROR [HPM] Error occurred while proxying request localhost:3000/api/token to https://<apiurl>.com/ [ERR_TLS_CERT_ALTNAME_INVALID] (https://nodejs.org/api/errors.html#errors_common_system_errors)
谢谢
问题不在于如何将 api 发送到外部 API ...问题在于外部 API 它自己...确保外部 API 没有执行任何操作所需的凭据...
如果您可以向 https://jsonplaceholder.typicode.com/posts 发出请求并获得结果,这意味着您的代码中没有问题...cors erros 在大多数情况下是后端问题...这意味着..后端开发人员谁处理过它应该修复它
我有一个在 Nuxt 中构建的表单。我正在尝试将其提交给外部 API。预期的响应是 JWT 令牌。
async login() {
const res = await this.$axios.$post(`/api/token`, {
username: this.username,
password: this.password
}, this.headers )
console.log(res)
}
尝试直接调用 API 时出现 CORS 错误,因此我在 nuxt.confix.js.
中使用了代理设置...
modules: [
'@nuxtjs/axios',
'@nuxtjs/proxy'
],
axios: {
baseURL: '/',
proxy: true
},
proxy: {
'/api/': { target: 'https://<apiurl>.com/', changeOrigin: true }
},
...
现在,当我检查网络选项卡时,它显示了一个 301 重定向,但是在 post 请求中发送的数据被丢弃了,它向 API 发出了一个获取请求returns 一个 405 错误(因为它期望一个 POST 带有数据的请求而不是一个空的 GET 请求)。
如何使用 NUXT 向外部 API 发出 POST 请求?这是一个选择吗?
我尝试更改 changeOrigin: false,这似乎解决了这个问题,但它抛出了一个 500 服务器错误和一个 npm 错误
ERROR [HPM] Error occurred while proxying request localhost:3000/api/token to https://<apiurl>.com/ [ERR_TLS_CERT_ALTNAME_INVALID] (https://nodejs.org/api/errors.html#errors_common_system_errors)
谢谢
问题不在于如何将 api 发送到外部 API ...问题在于外部 API 它自己...确保外部 API 没有执行任何操作所需的凭据...
如果您可以向 https://jsonplaceholder.typicode.com/posts 发出请求并获得结果,这意味着您的代码中没有问题...cors erros 在大多数情况下是后端问题...这意味着..后端开发人员谁处理过它应该修复它