HTTP请求的嵌入式凭据替代

时间:2017-06-07 21:43:24

标签: javascript ajax api http google-chrome-extension

前段时间我创建了一个名为MalOnTheGo的chrome扩展程序。它一直运行良好,但chrome现在放弃了对我从API访问资源的方式的支持。可以找到放置的Chromestatus here。他们正在放弃对一种名为Embedded Credentials的网址格式的支持。我找了替代品但是我找不到任何东西。

在API文档中,他们指定格式化链接的方式与使用jQuery和用户名和密码参数的方式相同:

“用法示例:

CURL:

curl -u user:passwordhttps://myanimelist.net/api/account/verify_credentials.xml

这是Chrome警告我的代码片段之一,将在6月份的某些时候无效。

function verifyCredentials(username, password, error, success) {
                $.ajax({
                        "url": "https://myanimelist.net/api/account/verify_credentials.xml",
                        "error": error,
                        "username": encodeURIComponent(username),
                        "password": encodeURIComponent(password),
                        "success": success
                });
        }

API的文档指出这是访问该资源的方式。 有什么我可以改变的,或者这是我可以使用它的唯一方法,API开发人员需要更新它们的实现吗?

我目前所拥有的任何替代方案都会有所帮助 谢谢

1 个答案:

答案 0 :(得分:0)

您可能会发现CORS有助于提出验证凭据的跨域请求。本教程中有很多有用的信息:

https://www.html5rocks.com/en/tutorials/cors/

您仍然可以使用ajax发出请求,您只需添加更多标头即可进行身份验证。还有专门针对Chrome扩展程序的部分:

https://www.html5rocks.com/en/tutorials/cors/#toc-cross-domain-from-chrome-extensions