基本用户身份验证适用于 Android,不适用于 iOS
Posted
技术标签:
【中文标题】基本用户身份验证适用于 Android,不适用于 iOS【英文标题】:Basic user authentication works on Android, does not on iOS 【发布时间】:2015-11-06 13:44:36 【问题描述】:我正在构建一个使用基本用户身份验证从服务器获取数据的应用。这在 android 上运行良好,但在 ios 上没有任何反应。在 Safari 中也可以正常工作。
这是我正在使用的代码:
$.ajax(
url: main_url+'api-cache/'+slug+'.json?r='+random_number(),
dataType: 'json',
headers:
'Authorization': "Basic " + btoa(localStorage.getItem('email') + ":" + localStorage.getItem('password'))
)
.done(function(result)
main_url 是指向 https 网站的链接。
我也尝试过用户名和密码,就像 jQuery 文档说的一样,而且在发送之前,似乎没有任何效果。顺便说一句,如果没有身份验证,它就可以正常工作。结果似乎也是“.done”,因为“.fail”中没有触发错误。
帮助?哦,顺便说一句,我正在使用 Phonegap Build。
【问题讨论】:
【参考方案1】:使用服务器上的几个标头而不是更改应用程序解决了问题:https://benjaminhorn.io/code/setting-cors-cross-origin-resource-sharing-on-apache-with-correct-response-headers-allowing-everything-through/
【讨论】:
以上是关于基本用户身份验证适用于 Android,不适用于 iOS的主要内容,如果未能解决你的问题,请参考以下文章
JWT 身份验证适用于 $http.get 但不适用于 $http.post
Cloudkit 身份验证仅适用于我的 alt 帐户,不适用于 Dev 或 Tester 帐户
AppAuth 登录重定向适用于 iOS,但不适用于 Android