在用于iOS 9的Cordova应用程序中,没有自定义HTTP标头发送jQuery AJAX请求

时间:2016-03-10 20:33:29

标签: jquery ios ajax cordova http-headers

在移动应用程序中,我使用jQuery $ .ajax为Cordova构建带有自定义HTTP标头的请求到后端,在iPhone 6(iOS 9.2)设备上,自定义标头不会发送到后端。在Android和iPhone 4(iOS 7.3)设备上,标头正在完美发送。后端的CORS配置为接受所有来源,所有方法和所有标题。

我使用以下代码发送请求:

$.ajax({
  type: "GET",
  url: "https://mybackend.example.com/api/resource",
  data: myData,
  beforeSend: function(request) {
    request.setRequestHeader("Authorization", "Bearer " + loginToken);
    request.setRequestHeader("X-My-Custom-Header", myHeader);
  },
  dataType: "json"
}).success(function(data, code, xhr) {
  // Do something on success
}).error(function(qXHR, textStatus, errorThrown) {
  // Do something on error
});

没有预检请求。请求成功,但它发生在iOS 9.2设备上,自定义标题X-My-Custom-Header只是省略。

我尝试使用标题而不是 beforeSend ,但没有运气。

0 个答案:

没有答案