【问题标题】:How to catch OPTIONS method call如何捕获 OPTIONS 方法调用
【发布时间】:2017-01-24 04:36:09
【问题描述】:

我的 API 现在已关闭,由于 OPTIONS 调用得到 503,我的应用程序严重崩溃。在搜索高低后,我发现 Google 很难“捕获失败的选项调用”等人。没有收到一堆关于人们询问OPTIONS 调用是什么的帖子,或者更多关于将options 传递给API 调用的帖子。

那么,如何在我的代码中捕获失败的 OPTIONS 调用。这是一个示例 sn-p,其中调用失败。

const userPreferences = yield fetch(url, options).then((response) => response);
const result = yield userPreferences.json();
if (userPreferences.status !== 200) {
  yield put(saveError(result));
} else {
  yield put(savePreferences(result));
}

【问题讨论】:

  • yield 的目的是什么?为什么不在.then() 内执行操作?
  • 我发现在生成器函数中以这种方式阅读更容易。
  • 您要确定什么?你试过mode:"no-cors"吗?

标签: javascript http-options-method


【解决方案1】:

你不能。这是您的浏览器在尝试找出诸如 CORS 之类的东西时会为您做的事情。只有您的浏览器会得到响应。它不会将结果传递给您的代码。

【讨论】:

  • 这就是我害怕的:(
  • 我很高兴看到您使用生成器函数,但我对它们并没有我想的那么熟悉。如果 fetch 返回的 Promise 被拒绝,我无法理解会发生什么。
猜你喜欢
  • 2014-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-28
  • 2018-01-27
  • 1970-01-01
  • 2023-04-10
相关资源
最近更新 更多