Ошибка CORS в приложении React с плагином Active Directory - PullRequest
0 голосов
/ 06 февраля 2019

Я получаю ошибку 401 или ошибку, связанную с CORS, при извлечении плагина [Active Directory через собственный плагин для React ( React-ADAL ).

Мне нужно интегрироватьПлагин Active Directory для веб-API с приложением React.js, позволяющий извлекать данные с моей платформы Microsoft Dynamics 365. CRM.

Согласно документации Micosoft плагин ADAL облегчает эту работу CORS, но япо-прежнему вижу эту ошибку CORS при извлечении с помощью функции adalApiFetch().

Это мой adalConfig.js файл:

import { AuthenticationContext, adalFetch, withAdalLogin } from 'react-adal';

export const adalConfig = {
    tenant: '<tenant id>',
    clientId: '<active directory app id>',
    endpoints: {
        api: '<active directory app id>'
    },
    cacheLocation: 'localStorage',
};

export const authContext = new AuthenticationContext(adalConfig);

export const adalApiFetch = (fetch, url, options) => adalFetch(authContext, adalConfig.endpoints.api, fetch, url, options);

export const withAdalLoginApi = withAdalLogin(authContext, adalConfig.endpoints.api);

А затем мой Component код для извлечения с помощью плагина:

import React, { Component } from 'react';
import { adalApiFetch } from '../../../adalConfig';

export default class AComponent extends Component {
    componentDidMount() {
        this.getLeads();
    }

    getLeads() {
        let result;
        let headers = new Headers();
        headers.append('Content-Type', 'application/json');
        const options = {
            method: 'GET',
            headers
        };

        adalApiFetch(fetch, 'https://myorg.crm2.dynamics.com/api/data/v9.1/leads', options)
        .then(response =>{
            console.log(response);
        })
        .catch(error => console.error('SERVER ERROR:', error));
    }
}

Отображение инструментов разработчика Chrome:

Есть идеи, чтобы это исправить?Заранее спасибо.

...