标签: fetch

无法使用 fetch API 获取数据

我无法让 fetch() API 工作。我强烈地感觉到我做错了什么。

\n\n

我有一个在 PORT 3005 上运行的简单 Express 服务器,它以 json 格式返回数据,还有一个在 PORT 3000 上运行的 React.js 客户端。

\n\n

我正在向fetch()发出 GET 请求,http://localhost:3005/api但在控制台上收到这些消息

\n\n
\n

跨源请求被阻止:同源策略不允许读取位于http://localhost:3005/api 的远程资源处的远程资源。\n(原因:CORS 标头 \xe2\x80\x98Access-Control-Allow-Origin\xe2\ x80\x99 缺失)。

\n\n

类型错误:尝试获取资源时出现网络错误。

\n
\n\n

我添加了一个标题并阅读了类似的问题,但我仍然无法让它工作,而且我仍然收到相同的消息。

\n\n

我究竟做错了什么?(这是代码)

\n\n
let url = \'http://localhost:3005/api\';\n    fetch(url, { \n      method: \'GET\',\n      headers:{\n        \'Access-Control-Allow-Origin\': \'*\',\n        \'Access-Control-Allow-Credentials\':true,\n        \'Access-Control-Allow-Methods\':\'POST, GET\'\n      }\n    }).then(response => response.json)\n    .then(data => console.log(data))\n
Run Code Online (Sandbox Code Playgroud)\n\n

我过去多次遇到过这个问题,通常只使用 axios。但这一次,我想要得到fetch()上班……!

\n

javascript fetch cors reactjs

2
推荐指数
1
解决办法
1万
查看次数

获取请求返回状态 cors 和可读流

我正在对我的后端进行提取调用,这是调用。

\n\n

\r\n
\r\n
    const response = await fetch(apiUrl + \'/recipes\', {\r\n      method: \'POST\',\r\n      headers: {\r\n        \'Content-Type\': \'application/json\',\r\n        \'Authorization\': `Token token=${user.token}`\r\n      },\r\n      body: JSON.stringify({\r\n        recipe: {\r\n          recipeId: uri\r\n        }\r\n      })\r\n    })
Run Code Online (Sandbox Code Playgroud)\r\n
\r\n
\r\n

\n\n

然后这是我在后端发送呼叫的路线

\n\n

\r\n
\r\n
router.post(\'/recipes\', requireToken, (req, res) => {\r\n  req.body.recipe.owner = req.user.id\r\n  Recipe.create(req.body.recipe)\r\n    .then(recipe => {\r\n      console.log(\'Recipe object saved is\', recipe)\r\n      res.status(201).json({ recipe: recipe.toObject() })\r\n    })\r\n    .catch(err => handle(err, res))\r\n})
Run Code Online (Sandbox Code Playgroud)\r\n
\r\n
\r\n

\n\n

当我这样做时,正确的对象会在发回之前记录。这是记录内容的示例

\n\n

\r\n
\r\n
{ __v: 0,\r\n  updatedAt: 2018-10-19T15:47:16.809Z,\r\n  createdAt: …
Run Code Online (Sandbox Code Playgroud)

javascript http fetch

2
推荐指数
1
解决办法
4024
查看次数

How to handle divide by zero in Oracle function

I'm getting a divide by zero error when I use this function. It compiles fine. Since I'm not using a select statement I'm assuming NULLIF isn't going to work. What can I use to avoid the divide by zero issue?

    OPEN GET_DATA;
    fetch GET_DATA into v_gpa_hsch,v_gpa_hsch_scale,v_gpa_scale,v_gpa,
     v_gpa_recalc,v_gpa_hsch_recalc;
    IF GET_DATA%NOTFOUND
    THEN
    IT_final_final_calc :=0;

    ELSE
            IF  v_gpa_hsch_scale < v_gpa_scale
            THEN IL_higher_scale_calc := v_gpa_scale;
            ELSE IL_higher_scale_calc := v_gpa_hsch_scale;
            END IF;

            IF v_gpa_hsch < v_gpa
            THEN IM_gpa_calc := v_gpa;
            ELSE IM_gpa_calc := v_gpa_hsch;
            END …
Run Code Online (Sandbox Code Playgroud)

oracle function fetch divide-by-zero

2
推荐指数
1
解决办法
1万
查看次数

如何让我的获取错误显示 http 状态代码?

我有一个反应组件,我正在进行网络调用来设置状态。最终我想将其传递给其他子组件,但目前只是让管道工作。

我试图在调用我的后端(应用程序中的快速服务器)时正确捕获错误。我试图通过从不存在的端点获取数据来强制发生错误。这应该会抛出 404,因为它不存在,对吧?如何让 catch 语句中出现该错误?现在我的错误是SyntaxError: Unexpected token < in JSON at position 0 at eval (app.js:61)

export default class App extends Component {

  constructor(props) {
    super(props);
    this.state = {
      data: null
    };
  }

  componentDidMount() { 
    fetch('/api/wrong_endpoint').then((data) => {
      return data.json();
    }).then((body) => {
      this.setState({data: body})
    }).catch(err => console.log(err));

  }

  render() {
    console.log('logging the states');
    console.log(this.state.data);
    return (
      <div>
        <ContactList />
        <ContactDetail />
        <AddContactModal />
      </div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

javascript http fetch express reactjs

2
推荐指数
1
解决办法
7686
查看次数

如何从 ReactJS 中的任何 url 获取元数据(图像、标题、描述)

我想从像 Medium 文章这样的 url 中获取元数据(标题、图像、描述),然后将其显示为我的博客上的帖子。怎么做。我正在使用 ReactJS

\n\n

我尝试使用 fetch 和 axios.get 但它总是在浏览器控制台中显示错误。\n“尝试获取资源时出现网络错误。”\n“跨源请求被阻止:同源策略不允许读取https://medium.com/s/jessica-valenti/hateful-fox-news-上的远程资源rhetoric-can-do-real-world-harm-52e26008caa5。(原因:CORS 标头 \xe2\x80\x98Access-Control-Allow-Origin\xe2\x80\x99 缺失)”

\n

metadata fetch node.js reactjs

2
推荐指数
1
解决办法
8890
查看次数

从 JSON 数据创建模拟 JavaScript 响应

我有一个应用程序可以进行很多异步操作fetch调用,其中一些是相同的。

\n\n

我有一个超集函数fetch(例如fetchPlus),通过根据参数为每个请求创建一个伪唯一标识符。这样,我就可以存储结果sessionStorage并访问它。

\n\n
function fetchCacheStore(hash) {\n    const storeItem = \'fetch_\' + hash;\n    return {\n        getCache: function () {\n            return JSON.parse(sessionStorage.getItem(storeItem));\n        },\n\n        setCache: function (data) {\n            sessionStorage.setItem(storeItem, JSON.stringify(data));\n            setTimeout(function () { sessionStorage.removeItem(storeItem); }, 25); // Clear the cache item shortly after\n        },\n    };\n}\n\nfunction fetchPlus() {\n    const stringHasher = function (s) { // Adapted from /sf/ask/533152301/#comment94234739_7616484\n        for (var i = h = 0; i < s.length; i++) {\n            h = Math.imul(31, h) + …
Run Code Online (Sandbox Code Playgroud)

javascript json fetch

2
推荐指数
1
解决办法
4990
查看次数

我如何在 fetch 调用中解析简单的 json 响应

我在获取响应中获取简单的 json 对象。当我尝试访问该对象时,它被捕获。

this my reposnse
{
    "islogin": true
}



 fetch(url, data)
      .then(res => {console.log(res);return res.json()})
      .then(
        (result) => {
          console.log("rsult",JSON.stringify(result));
          console.log(result.islogin);
          console.log("1");
          console.log("authentication success");
        })
      .catch((error) => { window.alert("error", error);
        console.log("authentication failed");
      });
Run Code Online (Sandbox Code Playgroud)

我期望 result.islogin 为 true/false。但它不会进入 then(result) 回调。

json fetch reactjs

2
推荐指数
1
解决办法
1万
查看次数

开玩笑地嘲笑获取响应 blob 的 fetch() 函数

我想使用 jest.fn().mockimplementation() 来模拟 fetch 函数,并使用 jest.fn().mockimplementation() 进行额外的 blob 提取,而不使用 fetch-mock 或 jest-fetch-mock

fetch(url)
.then((response) => response.blob)
.then((data) => imageHandler(data))
Run Code Online (Sandbox Code Playgroud)

javascript fetch ecmascript-6 reactjs jestjs

2
推荐指数
1
解决办法
7234
查看次数

如何使用 svelte 获取远程 API?

我正在从 API 获取报价,并且获取似乎有效,因为第一个console.log被正确调用,但第二个没有被正确调用。内容是jsonAPI 对象中的一个字段。

<script>
    import { onMount } from "svelte";
    let non = [];


    onMount(async function() {
        const res = await fetch("https://api.quotable.io/random");
        const json = await res.json();
        non.push(json);
        console.log(non);
    });

</script>

<div>
   {#each non as {content}}
   <p>{content}{console.log(content)}</p>
   {/each}
</div>
Run Code Online (Sandbox Code Playgroud)

javascript fetch svelte svelte-component

2
推荐指数
1
解决办法
5963
查看次数

无法使用 fetch 发送多部分,但 axios 工作正常

这是我的代码:

function uploadImage(payload) {
  return fetch('/api/storage/upload/image/', {
    method: 'POST',
    headers: {
      'Content-Type': 'multipart/form-data',
      Accept: 'application/json',
      Authorization: 'Bearer <token>',
    },
    body: payload,
  });
}
function uploadImage2(payload) {
  return axios.post('/api/storage/upload/image/', payload, {
    headers: {
      'Content-Type': 'multipart/form-data',
      Accept: 'application/json',
      Authorization: 'Bearer <token>',
    },
  });
}
function test(file, meta_data) {
  var formBody = new FormData();
  formBody.set('image', file);
  formBody.set('meta_data', meta_data);

  uploadImage(formBody);
  // doesn't work
  uploadImage2(formBody);
  // works
}
Run Code Online (Sandbox Code Playgroud)

有人可以向我解释一下我应该如何使用 fetch 发送多部分请求吗?

我用这段代码得到的错误是:400 bad request, file and meta_data are null.

javascript forms multipartform-data fetch axios

2
推荐指数
1
解决办法
742
查看次数