如何使用Superagent设置和发送自定义请求标头?

时间:2018-11-29 07:32:37

标签: ajax reactjs superagent

我已使用superagent NPM软件包从react应用程序进行ajax调用。所有Ajax调用均正常工作。但是,当我在Superagent中发送“自定义”标头时,“自定义”标头未设置并进入请求。

        import superagentPromise from 'superagent-promise';
        import _superagent from 'superagent'; //progressive client-side HTTP request library

        const superagent = superagentPromise(_superagent, global.Promise);
        const API_ROOT = 'https://vignesht-eval-test.apigee.net';

        const requests = {
            del: url =>
                superagent.del(`${API_ROOT}${url}`).set({ "apiKey": "yvDpT3u9aDWcFM8AiWWEjbXtN5ehHv").then(responseBody),
            get: url =>
                superagent.get(`${API_ROOT}${url}`).set({ "apiKey": "yvDpT3u9aDWcFM8AiWWEjbXtN5ehHv"}).then(responseBody),
            put: (url, body) =>
                superagent.put(`${API_ROOT}${url}`, body).set({ "apiKey": "yvDpT3u9aDWcFM8AiWWEjbXtN5ehHv"}).then(responseBody),
            post: (url, body) =>
                superagent.post(`${API_ROOT}${url}`, body).set({"apiKey": "yvDpT3u9aDWcFM8AiWWEjbXtN5ehHv"}).then(responseBody),
        };       


    const UserPortal = {
        getLastEditedTemplateDetails: (userId) => {
            return requests.get(`/template/lasteditedtemplateDetails`);
        }
    }

    export default {
        API_ROOT,    
        WebSiteEditor    
    };

在另一页上,我们正在调用该方法,

    import agent from "../../agent";

    class UserPortal extends React.Component {
        constructor(props) {
            super(props);
            this.state = { isOpen: false };
        }



     componentWillMount() {
            this.props.onLoad(Promise.resolve(agent.UserPortal.getLastEditedTemplateDetails(this.props.currentUserId)));           
        }

        componentWillUnmount() {
            this.props.onUnload();
        }
        render() {
        }
    }

加载页面时,我在chrome浏览器中收到以下错误消息。

在控制台中,

enter image description here

在网络中,

enter image description here

“ apiKey”:“ yvDpT3u9aDWcFM8AiWWEjbXtN5ehHv”-未在标头中发送。

注意:Apikey用于验证用户并允许他们访问资源。

请告诉我我在这里想念什么?

谢谢。

0 个答案:

没有答案