如何在 AJAX 中形成授权 CURL 请求? [复制]
Posted
技术标签:
【中文标题】如何在 AJAX 中形成授权 CURL 请求? [复制]【英文标题】:How to form a authorization CURL request in AJAX? [duplicate] 【发布时间】:2019-01-15 21:28:45 【问题描述】:我有以下 CURL 请求,需要 JWT 令牌才能访问 express.js 中的受保护路由。此请求运行良好。
curl --request GET \
--url http://localhost:3001/api/v1/protected/random-quote \
--header 'Authorization: Bearer eyJ0xxxxQ.NLNOn1caBeGFlPRnsSjLDIKFggMItcm-dl5PKOjlLxs' \
--header 'Content-Type: application/json'
如何制定相应的 AJAX 请求?
<script>
var id_tok = Cookies.get('id_token');
var access_tok = Cookies.get('access_token');
var headersOb = 'Authorization: Bearer ' + access_tok;
$.ajax(
type: 'GET',
url: 'http://localhost:3001/api/v1/protected/random-quote',
headers: headersOb,
contentType: 'application/json',
dataType: 'json'
).done(function(data)
console.log(data);
console.log('data called success');
);
</script>
使用上述 AJAX 请求,我收到以下错误:
VM9599 jquery.min.js:3049 GET http://localhost:3001/api/v1/protected/random-quote 401 (Unauthorized)
【问题讨论】:
我认为headersOb
实际上应该是一个对象:"Authorization": "Bearer ..."
。检查 DevTools 的“网络”请求是否包含您的自定义标头。
【参考方案1】:
需要将对象传递给headers
选项
headers: 'Authorization': 'Bearer ' + access_tok
【讨论】:
谢谢。效果很好。以上是关于如何在 AJAX 中形成授权 CURL 请求? [复制]的主要内容,如果未能解决你的问题,请参考以下文章