Вызов Ax ios get () не работает на рабочей конечной точке - PullRequest
1 голос
/ 22 марта 2020

У меня есть приложение React с функцией входа в Facebook. Чтобы войти, мне нужно нажать конечную точку «http://localhost: 5000 / api / auth / facebook » с запросом GET. Это почему-то работает, когда я использую простую ссылку:

<a href="http://localhost:5000/api/auth/facebook">Login</a>

Сначала он вызывает oAuth-вызов Facebook, а затем вызывает конечную точку обратного вызова для получения токена.

То же самое не ' t работать с Ax ios.

Это Составная часть React: со ссылкой и функцией поддержки.

return (
      <div>
        <div>Dashboard</div>
        <a
          href="http://localhost:5000/api/auth/facebook"
          //onClick={this.LoginWithFacebook}
        >
          Login with Facebook Href
        </a>
        <button onClick={this.props.LoginWithFacebook}>
          Login with faceebook Func
        </button>
      </div>
    );

Функция входа в систему :

export const LoginWithFacebook = () => async dispatch => {
  try {
    const result = await axios.get("api/auth/facebook");

    dispatch({
      type: LOGIN_USER,
      payload: result.data
    });
  } catch (err) {
    dispatch({
      type: GET_ERRORS,
      payload: err
    });
  }
};

С помощью этой функции она просто достигает маршрута oAuth, но не достигает конечной точки обратного вызова.

[UPD] Реферер устанавливается на http://localhost: 3000 / при вызове конечной точки из функции, а статус равен pending. Я понятия не имею, почему, так как я использовал прокси в пакете. json, и другие функции работают хорошо.

[UPD2] Сетевые скриншоты

Со ссылкой (работает): enter image description here

С функцией (не работает): enter image description here

fetch("https://www.facebook.com/v3.2/dialog/oauth?response_type=code&redirect_uri=http%3A%2F%2Flocalhost%3A5000%2Fapi%2Fauth%2Ffacebook%2Fcallback&scope=public_profile%2Cemail&client_id=XXXXXXXXX", {"credentials":"omit","referrer":"http://localhost:3000/","referrerPolicy":"no-referrer-when-downgrade","body":null,"method":"GET","mode":"cors"});

Примечание , я редактировал client_id

Что здесь может быть не так?

...