[英]Ember-simple-auth and ember-fetch no authorization in fetch query
我正在將ember與ember-simple-auth(1.7.0)一起使用進行身份驗證。 這是應用程序適配器功能:
authorize(xhr) {
let { email, token } = this.get('session.data.authenticated');
let authData = `Token token="${token}", email="${email}"`;
xhr.setRequestHeader('Authorization', authData);
}
當我使用ember-fetch(5.1.3)時,沒有用於身份驗證的標頭:
fetch('/appname/v1/user/count'+count_params).then((response)=>{return response.json()})
同一模型使用標題中的auth信息成功執行emberDS查詢。 如何將信息添加到提取頭中?
編輯:
這是我創建的用於包裝fetch的服務:
import Service from '@ember/service';
import fetch from 'fetch';
import { inject as service} from "@ember/service"
export default Service.extend({
fetch(url){
let { email, token } = this.get('session.data.authenticated')
let authData = `Token token="${token}", email="${email}"`
return fetch(url,{headers: {'Authorization': authData}}).then(
(response)=>{return response.json()}
)
},
session: service()
});
您需要創建並使用獲取包裝服務,而不是“原始”獲取和樣板服務。
標頭可以原始使用-https: //github.com/github/fetch#post-json
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.