gpt4 book ai didi

javascript - 使用 Javascript 插件作为客户端的 Web API 的身份验证和授权

转载 作者:行者123 更新时间:2023-11-29 20:01:19 25 4
gpt4 key购买 nike

我正在编写一个 Web Api(使用 asp.net Web Api)并且自然希望客户端进行身份验证以使用该服务。

我希望编写一个可以使用 Api 的 Javascript 插件,然后使其可以简单地放入其他网站。

有没有一种安全的方法可以让插件进行身份验证?我不确定如何对传递给插件的任何信息保密。

我还希望 native 应用程序使用该 API,那么这是否规定了使用 cookie 的所有内容?

谢谢

最佳答案

Is there a secure way I can have the plugin authenticate?

您将不得不在您的插件中嵌入用户名/密码,或者有一些字段来从用户那里获取该信息。

如果您选择嵌入用户名/密码,请考虑一些代码:

$.ajax({
url: 'api/foo',
type: 'GET',
dataType: 'json',
success: onSuccess,
error: onError,
beforeSend: setHeader
});

注意beforeSend赋值给setHeader:

function setHeader(xhr) {    
xhr.setRequestHeader('Authorization', 'Basic YXBpX3VzZXIxOjEyMzQxMjM0');

请注意,您必须使用以下方法预先计算身份验证字符串

现在如果你想从用户那里提取用户名/密码,你可以这样做:

function setHeader(xhr) {            
xhr.setRequestHeader('Authorization', make_base_auth($("#username").val(), $("#password").val()));
}

function make_base_auth(user, password) {
var tok = user + ':' + password;
var hash = Base64.encode(tok);
return "Basic " + hash;
}

关于javascript - 使用 Javascript 插件作为客户端的 Web API 的身份验证和授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14365981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com