为什么我的请求POST $ resource是一个OPTIONS

时间:2013-02-07 16:01:18

标签: angularjs

我正在使用的代码如下,在coffeescipt中:

request_with_token =
  get:
    method: "JSONP",
    params:
      token: app["token"]
  save:
    method: "POST",
    params:
      token: app["token"]

$rootScope.API = "http://0.0.0.0:5200/1.0"

$scope.ajaxAccountUpdate = $resource($rootScope.API + "/account/update.json",
  { callback: "JSON_CALLBACK" }, request_with_token )

user = $scope.user
$scope.ajaxAccountUpdate.save user, (resource) ->
  $scope.show_message(resource)

但是在我的日志中我有一个OPTIONS而不是POST

[07/Feb/2013 16:50:48] "OPTIONS /1.0/account/update?callback=JSON_CALLBACK&token=mytoken HTTP/1.1" 200 -

由于

1 个答案:

答案 0 :(得分:2)

可能是因为您向提供HTML的不同网站发出请求,导致“跨源资源共享”CORS飞行前检查。这是一项安全功能:

有关详细信息:http://www.html5rocks.com/en/tutorials/cors/