【发布时间】:2020-03-04 13:30:15
【问题描述】:
我在使用函数外部的局部变量时遇到问题。我正在调用 myapi.com/access_token 以获取访问令牌,然后我需要在对 jsonserverprovider 的请求的标头中使用该访问令牌。我尝试使用 window.bl_token 声明它,但是当我尝试 console.log 响应时仍然得到未定义的结果。
import React from 'react';
import { fetchUtils, Admin, Resource } from 'react-admin';
import jsonServerProvider from 'ra-data-json-server';
var bl_token;
const data = { email: 'xxx@xxx.com', password: 'xxx' };
fetch('https://myapi.com/access_token', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(data),
})
.then((response) => response.json())
.then((bl_data) => {
window.bl_token=bl_data.access_token;
})
const httpClient = (url, options = {}) => {
if (!options.headers) {
options.headers = new Headers({ Accept: 'application/json' });
options.headers = new Headers({Authorization: bl_token});
}
return fetchUtils.fetchJson(url, options);
};
const dataProvider = jsonServerProvider('https://myapi.com/', httpClient);
const App = () => (
<Admin dataProvider={dataProvider}>
<Resource name="links"/>
</Admin>
);
export default App;
【问题讨论】:
-
这里的示例中没有 console.log ......
标签: javascript jquery reactjs