如何使用 Passport 基本身份验证进行 $http 调用?
我在服务器上使用 Passport 设置了基本身份验证,并且可以使用 POSTMAN 进行测试。但是当我尝试在我的 Angular 应用程序上执行此操作时,我无法让它传递基本身份验证的用户名和密码。
我的 $http 调用中有以下内容
$http({
method:'POST',
url: 'http://myapicall.com/api/login',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization' : 'Basic Username:MySecret'
},....
我还需要添加什么吗?我一直没有获得授权,当我在 postman 上使用相同的用户名和密码时,它工作正常。
最佳答案
使用btoa
函数将您的username:password
转换为base64
$http({
method:'POST',
url: 'http://myapicall.com/api/login',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization' : 'Basic ' + window.btoa('Username:MySecret')
},....
关于angularjs - 无法使用 Passport 基本身份验证来验证 $http,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35973482/