【发布时间】:2012-03-08 23:20:37
【问题描述】:
我正在向 Assembla REST API 发出 GET 请求。你可以在这里阅读:http://www.assembla.com/spaces/breakoutdocs/wiki/Assembla_REST_API
API 要求您在请求标头上设置 Accept: 'application/xml' 以接收回 xml 数据。否则,html 会在响应中返回。
我的服务调用在 iOS 和 Safari 中有效,但在 Android 中不返回任何内容。
我的cordova.xml 文件有<access origin=".*"/>,所以我认为这不是白名单问题。我在这里尝试了几乎所有我能想到的变化。
示例 ajax 请求:
$.ajax({
url: 'https://www.assembla.com/spaces/my_spaces',
username: userModel.get('username'),
password: userModel.get('password'),
headers: {
Accept: 'application/xml'
},
success: onSuccess,
error: onError
});
就像我说的,这个请求在 Android 中不会触发 onSuccess 或 onError。该请求在 iOS 和 Safari 中运行良好。如果我取出 headers 属性,请求将在 Android 中点击 onSuccess 但将返回 html。
【问题讨论】: