我在 Sencha 上遇到了来自具有基本身份验证的服务器的图像的问题,确实图像不想在 tpl 中的 Android 设备(Galaxy S2)上显示,我试图放置这样的 URL [http:// username:password@mydomain/image.png] 在图像的 src 中,但它不起作用。
我还尝试发送带有标头中标识符的 Ajax 请求,但结果相同。
你能帮我吗 ?您还有其他解决方案吗?
谢谢你。
我在 Sencha 上遇到了来自具有基本身份验证的服务器的图像的问题,确实图像不想在 tpl 中的 Android 设备(Galaxy S2)上显示,我试图放置这样的 URL [http:// username:password@mydomain/image.png] 在图像的 src 中,但它不起作用。
我还尝试发送带有标头中标识符的 Ajax 请求,但结果相同。
你能帮我吗 ?您还有其他解决方案吗?
谢谢你。
最后,我解决了我的问题。我使用了带有标头的 XMLHttpRequest。
var xhr = new XMLHttpRequest();
xhr.open('GET', myURL, false);
xhr.setRequestHeader('Authorization', 'Basic '+base64ArrayBuffer(username+':'+password));
xhr.overrideMimeType('text/plain; charset=x-user-defined');
xhr.send(null);
我已经使用函数base64ArrayBuffer将 xhr.responseText 转换为 base64并将其放入我的图像的 src 中,它可以工作。
我在这里找到了函数base64ArrayBuffer的代码:Retrieving binary file content using Javascript, base64 encode it and reverse-decode it using Python