React,Axios和Spring Boot应用程序的难度 - 联系Localhost

时间:2018-02-15 02:48:19

标签: javascript reactjs axios

我正在尝试使用Google Cloud提供的VM来托管与Spring Boot服务(在Docker容器中运行)联系的React.js前端。我能够成功联系Spring Boot服务,无论是本地还是远程运行,而我的React应用程序都在我的开发机器上。但是,现在我也试图将React部分移动到云端。但是,当我使用axios.js库发出请求时:

if str1 in line:
   ....
if str2 is not None and str2 in line:
   ....

其中“baseEndpoint”来自配置文件:

 componentDidMount() {

axios.get(this.props.baseEndpoint + "/inventory")
.then((res) => {
const inv : any = res.data;
console.log(res);
this.setState( {inventory: inv});
});

axios.get(this.props.baseEndpoint + "/category")
.then((res) => {
const cats : any = res.data;
console.log(res);
this.setState( {categories: cats});
});
}

请求失败。

使用Firefox Developer的工具,会在控制台中记录“网络错误”。但是,每当我切换到“网络”选项卡本身时,就好像“获取”请求仍处于待处理状态。没有响应状态(例如500,404,200等),“已传输”和“大小”字段均为0.响应有效负载为空。

React应用程序使用非常简单的Nginx配置提供服务。

export const BASE_URL : string = "http://localhost";
export const SEARCH_BASE : string = BASE_URL + ":8081/find";
export const INVENTORY_BASE : string = BASE_URL + ":8082";

但是,我可以使用curl成功server { listen 80; root /home/kelly/workspace/front-end/distr; index index.html location / {} } 同一个端点(例如http://localhost:8082/category)就好了。问题可能是什么?我也试过127.0.0.0。

感谢。

编辑:

Firefox Developer工具的请求标头:

GET

卷曲的示例输出:

Accept  
application/json, text/plain, */*
Accept-Encoding 
gzip, deflate
Accept-Language 
en-US,en;q=0.5
Connection  
keep-alive
Host    
localhost:8082
Origin  
http://mysite
Referer 
http://mysite/index.html
User-Agent  
Mozilla/5.0 (X11; Linux x86_64…) Gecko/20100101 Firefox/58.0

编辑二:

网络不是我的专业领域,但是,我尝试在联系我的应用程序时运行tcptrack -i eth0。我从本地计算机/浏览器中看到两个请求端口80(可能是我的HTML页面一个,我的.js文件一个)。我还看到从我的VM的IP到169.254.169.254(基于此question,只是与云提供商关联的链接本地地址)和我的SSH连接的多个连接。但是,我没有看到任何关于端口8081,8082或其他任何地方的请求。不确定这是否有助于提供一些见解。

再次感谢。

0 个答案:

没有答案