当我尝试使用axios从app.js中获取数据时,总是出现网络错误,这是我的代码:
// app.js
var express = require('express');
var app = express();
const cors = require('cors');
var morgan = require('morgan')
const bodyParser = require('body-parser');
app.use(bodyParser.json());
app.use(morgan('combined'));
app.use(cors());
app.get('/lol', (req, res) =>{
res.send({
message: 'lol'
});
});
app.listen('8800');
console.log('started on port 8800');
// axios -Api.js
import axios from 'axios';
export default() => {
return axios.create({
baseURL: `http://localhost:8800`
});
};
-PostService.js
import Api from './Api.js';
export default {
async test () {
const result = await Api().get('/lol')
return (result.data.message);
},
};
// HomeScreen.js(本机反应)
export default function HomeScreen() {
....
async function wiw() {
try{
const responce = await Api.test()
console.log(`responce= ${responce}`)
alert(`responce= ${responce}`)
} catch(e) {
console.log(e)
}
}
我遇到网络错误,但是如果我将此(https://reqres.in/api/users?page=2)作为我的API可以正常工作,但是问题出在我的节点应用程序上(当我用PostMan测试它时,它可以按预期工作)
编辑:axios似乎没有到达节点,我每次将console.log添加到'/ lol'时都不会记录任何内容, 这是我得到的错误:
网络错误 -createError中的node_modules / axios / lib / core / createError.js:16:24 -handleError中的node_modules / axios / lib / adapters / xhr.js:81:25 -dispatchEvent中的node_modules / event-target-shim / dist / event-target-shim.js:818:39 -setReadyState中的node_modules / react-native / Libraries / Network / XMLHttpRequest.js:574:29 -__didCompleteResponse中的node_modules / react-native / Libraries / Network / XMLHttpRequest.js:388:25 -node_modules / react-native / Libraries / vendor / emitter / EventEmitter.js:190:12 在发射 -node_modules / react-native / Libraries / BatchedBridge / MessageQueue.js:395:47 在__callFunction中 -node_modules / react-native / Libraries / BatchedBridge / MessageQueue.js:106:26 在 -node_modules / react-native / Libraries / BatchedBridge / MessageQueue.js:343:10 在__guard中 -node_modules / react-native / Libraries / BatchedBridge / MessageQueue.js:105:17 在callFunctionReturnFlushedQueue中 * [本地代码]:callFunctionReturnFlushedQueue中为空
答案 0 :(得分:0)
我通过将节点端口从localhost更改为我的主要IP地址来解决它
app.listen(process.env.PORT || 8081,192.168.100.3);