gpt4 book ai didi

javascript - 在 Angular js 中添加 header 时,HTTP GET 请求更改为 OPTIONS

转载 作者:行者123 更新时间:2023-12-03 19:02:42 27 4
gpt4 key购买 nike

以下是我目前使用的请求

$http.get(url)
.success(function (data){})
.error(function (data){})

没有任何 CORS 问题。我的服务器端允许所有来源、方法、所有 header

当我添加像

这样的 http header 时
$http.get(url, { headers: { "USERID": user,  "SESSIONID": sessionId}})

当我在 chrome 开发工具网络选项卡中看到时,请求更改为 OPTIONS 方法

这是什么原因?如果需要,那么如何添加自定义 http header 。

我已经通过这个链接 angularjs-performs-an-options-http-request-for-a-cross-origin-resource但它没有帮助

在这里我期望服务器应该允许不同的来源。但它允许标题,只有当我在同一台服务器上时。但不确定这是按 Angular 还是按服务器端。

在标题之后

$http.get(url,{ headers: { "USERID": user, "SESSIONID": sessionId } })

在我看到的 chrome 开发工具中

Request Method:OPTIONS
Status Code:404 Not Found

但没有标题

Request Method:GET
Status Code:200 OK

当我在 REST 客户端中执行此操作时,我可以将 header 发送到后端。

最佳答案

$http({method: 'GET', url: '/someUrl', headers: { "USERID": user,  "SESSIONID": sessionId}}).
success(function(data, status, headers, config) {
// this callback will be called asynchronously
// when the response is available
}).
error(function(data, status, headers, config) {
// called asynchronously if an error occurs
// or server returns response with an error status.
});

会起作用。 $http.get 是一种快捷方式。检查 the docs 中的 config

关于javascript - 在 Angular js 中添加 header 时,HTTP GET 请求更改为 OPTIONS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25132246/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com