我在 ionic 2 中使用库 ng2-signalr
。问题是我不知道如何设置授权 header 。我进行了搜索,但没有找到任何示例。
我的连接到服务器集线器的代码。
let options: IConnectionOptions = { qs:{userId:1}, url: "http://192.168.0.211:44337"};
console.log("Stage 1");
//Header for 'this.singalR.connect'
this.signalR.connect(options)
.then((connection) => {
console.log("Client Id: " + connection.id);
}, (err) => {
console.log("SignalR Error: " + JSON.stringify(err));
});
如何设置下面的标题?
var headers = new Headers({
'Content-Type': "application/json",
"Authorization": 'Bearer ' + accessToken //accessToken contain bearer value.
});
图书馆:ng2-signalr
更新 1
此处链接 Query String Solution .提到了一种解决方法,即在 qs
中传递 authorization token
并进行相应处理。但我想在标题中设置,所以这个解决方案不适合我。还有一个原因,因为我有另一个客户端(Simple angularjs signalr),当我像下面这样设置标题时,它工作正常。
$.signalR.ajaxDefaults.headers = { Authorization: //here set header};
注意:在实现授权之前,相同的代码工作正常,因为我不需要设置授权 header 。
最佳答案
目前 (v2.0.4) 未在 ng2-signalr 中实现。
作为解决方法,您可以尝试:
declare var $: any;
$.signalR.ajaxDefaults.headers = new Headers({
'Content-Type': "application/json",
"Authorization": 'Bearer ' + accessToken //accessToken contain bearer value.
});
关于angularjs - 如何在 ng2-signalr 中设置授权 header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44278565/