在 React 组件中从 Behance API 加载数据

2023-12-02

我正在尝试通过他们的 API 加载 Behance 项目数据。无论是本地主机还是产品,我都会收到以下错误 -

Fetch API 无法加载 XXX。对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问源“http://localhost:5000”。如果不透明响应满足您的需求,请将请求模式设置为“no-cors”以在禁用 CORS 的情况下获取资源。

不知道如何解决这个问题。 我在下面的投资组合组件中的代码--

getPortfolio = () => {

const USER_ID = `XXX`,
      PROJECT_ID = `XXX`,
      API_KEY = `XXX`;

const BEHANCE_URL = `https://api.behance.net/v2/users/${USER_ID}/projects?client_id=${API_KEY}`;
console.log(BEHANCE_URL);

fetch(BEHANCE_URL, {
  method: 'get',
  dataType: 'jsonp',
  headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
  }
}).then((response) => {
  return response.json();
}).then((responseData) => {
  return responseData;
}).catch((err) => {
  return err;
});

}

更新:使用 jQuery ajax 代替 fetch。 --

$.ajax({
  url: BEHANCE_URL,
  type: "get",
  data: {projects: {}},
  dataType: "jsonp"
}).done((response) => {
  this.setState({
    portfolioData: response['projects']
  });
}).fail((error) => {
  console.log("Ajax request fails")
  console.log(error);
});

这似乎与 React 关系不大,而与 Behance 关系更大。你得到的是一个CORS错误正如你可能想到的那样。简而言之,CORS 是一种安装在浏览器上的安全措施,这样网站就无法请求浏览器中的其他网站显示为第二个网站。这是一项防止某些网络钓鱼攻击的安全措施。

服务器(在本例中为 Behance)可以禁用 CORS,但出于合法原因,他们决定不这样做。

Behance 可能会允许您改为从服务器发出您尝试发出的请求。完成此操作后,您需要将信息从服务器获取到 React 应用程序,然后就可以开始了!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 React 组件中从 Behance API 加载数据 的相关文章

随机推荐

  • WinRT 8.1 手机 - ListView 重新排序

    我需要在使用 WinRT 创建的 Windows Phone 8 1 应用程序中创建可重新排序的 ListView XAML 如下 它绑定到代码隐藏中的 ObservableDictionary
  • 如何在 Android 中使用 Google Places API for Web 服务?

    如何使用此链接返回 json 格式的结果 我已经有一个服务器密钥 但它一直显示 此 IP 站点或移动应用程序无权使用此 API 密钥 集成 Google Places API 的官方方式是通过 Android 实现 你可以使用地点选择器这是
  • 使用 df2 的日期时间中 df1 的“小时”和“分钟”的条件合并 2 个数据帧

    我有一个数据框df sample像这样 id lt c A A A A A A A A A A A date lt c 2018 11 12 2018 11 12 2018 11 12 2018 11 12 2018 11 12 2018
  • 确定与 COM RPC 服务器通信的客户端进程的进程 ID

    在COM RPC模型中 如果服务器运行在单独的进程上 是否有可能知道与服务器通信的客户端进程的进程ID Use Case 我有一个进程外 RPC 服务器 它可以接收来自一个或多个客户端进程的请求 有时 服务器需要知道客户端进程使用以下命令将
  • 防止 input() 为字母字符以外的任何内容

    我试图为了自我认识而制作一个程序 我想问用户他们的名字是什么 并且我只希望用户能够使用字母表中的字母来回答 或者仅使用字符串 我不希望他们能够用数字 符号等来回答 def cc name input Hello what happens t
  • 为 C++ 标准库配置 clang-check

    我正在尝试运行 Ale 作为我的 linter 它又使用 clang check 来检查我的代码 clang check FeatureManager h Error while trying to load a compilation d
  • 使用自定义列表使用 ItemSource 之前,项目集合必须为空

    在我的班级里ResultEntity如果我做 resultMulti new List
  • 张量流:ValueError:用序列设置数组元素

    我正在使用来自的固定代码这个问题 我收到上述错误 谷歌搜索表明这可能是某种尺寸不匹配 尽管我的诊断没有显示任何 with tf Session as sess sess run init Fit all training data for
  • 将二维码传输到 MySql 数据库

    我一直在试图找出将扫描的 QR 文本文件放入 MySql 数据库的最简单方法 我希望应用程序做的是使用移动设备扫描二维码 然后将扫描的图像保存到文件中 然后将其添加到 MySql 驱动数据库中 有没有一个应用程序可以为我此类项目奠定基础 非
  • 攻击实验室中操作码末尾的 c3

    我正在开发攻击实验室的一个版本 对于阶段 4 和 5 在农场操作中 我有几个以 c3 结尾的操作 但后面还有一个单独的操作retq c3 指令如下 0000000000401a6e
  • XPath:: 获取以下同级

    我有以下 HTML 结构 我正在尝试构建一个强大的方法来提取第二个颜色摘要元素 因为 DOM 中会有许多这样的标签 table tbody tr tr tr tr tr td Color Digest td td AgArAQICGQMVB
  • 对于闪亮仪表板的特定选项卡完全禁用右侧边栏功能

    我下面有一个闪亮的仪表板 我想知道是否有一种方法可以在选择特定选项卡时默认隐藏左侧和右侧边栏 在这种情况下 选项卡 Front 我用它做了shinyJs 有没有办法也隐藏 gear 图标以及从根本上打开右侧边栏的能力 Front 更具体地说
  • 找到两个给定节点之间的路径?

    假设我有以下方式连接的节点 如何获得给定点之间存在的路径数量以及路径详细信息 1 2 node 1 and 2 are connected 2 3 2 5 4 2 5 11 11 12 6 7 5 6 3 6 6 8 8 10 8 9 找到
  • 在python中绘制热图

    我有两个列表 x y 代表二维坐标 例如x 1 4 0 5 2 5 10 33 0 04 and y 2 5 44 0 33 2 14 20 0 03 x i and y i 代表二维中的一个点 现在我还有一个表示每个 x y 点的 热 值
  • 雅虎财经网络服务消失了吗? API变了?暂时下降?

    相当长一段时间以来 我一直在使用以下 REST API 来查询雅虎财经的当前价格 它在多个 Stack Overflow 帖子中都有记录 例如雅虎财经网络服务以及其他地方雅虎财经 http finance yahoo com webserv
  • 为什么使用push/pop而不是sub和mov?

    当我使用不同的编译器时https godbolt org 我注意到编译器生成这样的代码是很常见的 push rax push rbx push rcx call rdx pop rcx pop rbx pop rax 我明白每个push o
  • r - rmarkdown - 渲染数据帧列表

    是否可以将 Markdown 文档中的数据框列表呈现为单独的表格 Example 给定代码块 r listOfDf library knitr df lt data frame a rnorm 10 b rnorm 10 c c rep a
  • Php解析html dom并计算特定行数

    我正在使用 简单的 php DOM 解析器 解析 html 表并计算其行数 我解决了使用以下代码计算其中的所有行 tr 的问题 rows table gt find trClass count count rows echo count 我
  • 如何将 ruby​​ 记录器日志输出到标准输出以及文件?

    类似于记录器中的 T 恤功能 你可以写一个伪IO将写入多个的类IO对象 就像是 class MultiIO def initialize targets targets targets end def write args targets
  • 在 React 组件中从 Behance API 加载数据

    我正在尝试通过他们的 API 加载 Behance 项目数据 无论是本地主机还是产品 我都会收到以下错误 Fetch API 无法加载 XXX 对预检请求的响应未通过访问控制检查 请求的资源上不存在 Access Control Allow