reactjs 从另一个域、react和API平台- symfony提取数据

falq053o  于 2022-12-12  发布在  React
关注(0)|答案(1)|浏览(98)

在本地工作,我试图从一个API端点拉一些数据到一个react前端。
数据源/API端点(API平台,symfony)

  • http://127.0.0.1:8000/api/users?page=1

前端、React

  • http://127.0.0.1:3000/
    /源代码/应用程序.js
import React from 'react';

fetch('http://127.0.0.1:8000/api/users?page=1')
    .then(response => console.log(response))
    .then(json => console.log(json))

function App() {
  return (
    <div className="App">
    </div>
  );
}

export default App;

首先,我必须克服数据源的CORS问题。-

.环境

###> nelmio/cors-bundle ###
CORS_ALLOW_ORIGIN='^https?://(localhost|127\.0\.0\.1)(:[0-9]+)?$'
###< nelmio/cors-bundle ###

作为旁注;对于我的API端点(数据源)-我可以使用cURLpostman返回json响应,但是,如果我直接在浏览器地址栏中尝试,我只能返回我的api登录页面,即swagger doc。

我想知道这是否是一个没有设置标题的问题?
回到我的应用程序和控制台;-

我的响应显示为200,正如你从上面看到的,但是我的json变量的长度为零,所以没有数据。
关于如何使用上述技术将数据(json)拉到我的react应用程序中,有什么想法吗?

b1zrtrql

b1zrtrql1#

这就是我最后要找的...

import React from 'react';
import { useEffect } from 'react'

function App() {
  useEffect(() => {
    fetch("http://127.0.0.1:8000/api/users?page=1")
      .then((response) => response.json())
      .then((response) => {
        console.log(response);
      })
  }, []);

  return (
    <div className="App">
      
    </div>
  );
}

export default App;

相关问题