微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React Web App-在生产环境中通过localhost:5000调用Node / Expess服务器可在台式机上运行,​​但不能在iOS上运行

如何解决React Web App-在生产环境中通过localhost:5000调用Node / Expess服务器可在台式机上运行,​​但不能在iOS上运行

我正在使用的应用存在问题,我肯定需要一些帮助。

我有一个函数,该函数调用服务器以获取Twilio视频连接的令牌。发布我的应用程序时,API调用可在桌面上运行。尽管出于某种原因,当我在生产环境中尝试在iPhone上进行相同的呼叫时,它显示“网络错误”。


前端的函数调用如下:

axios.get('http://localhost:5000/token',config).then((results) => {
          const { identity,token } = results.data;
          setToken(token);
        }).catch((error) => {
           console.log(error)
        });

还有我的节点服务器:

const express = require("express");
const bodyParser = require("body-parser");
require('dotenv').config();
const HttpError = require("./models/http-error");
var twilio = require('twilio');
var client = new twilio('AC13ad3b5c6acac9fdc748384defa4d97c','992837728ee023760486c4da5e6b80c9');
var Accesstoken = require('twilio').jwt.Accesstoken;
var VideoGrant = Accesstoken.VideoGrant; 

const tokenRoutes = require("./token-routes");
const placesRoutes = require("./places-routes");
const roomroutes = require("./room-routes");
const transactionRoutes = require("./transaction-routes")
var cors = require('cors');

const app = express();
app.use(cors());

app.use(bodyParser.json());
app.use((req,res,next) => {
  res.setHeader("Access-Control-Allow-Origin","*");
  res.setHeader(
    "Access-Control-Allow-Headers","Origin,X-Requested-With,Content-Type,Accept,Authorization"
  );
  
  res.setHeader("Access-Control-Allow-Methods","GET,POST,PATCH,DELETE");
  next();
});
app.use("/api/places",placesRoutes);
app.use("/token",tokenRoutes);
app.use("/room",roomroutes);
app.use("/tranny",transactionRoutes);


if(process.env.NODE_ENV === 'DEV') {
    // ... initial code block here
}

app.use((req,next) => {
  const error = new HttpError("fuck",404); 
  throw error;
});

app.use((error,req,next) => {
  if (res.headerSent) {
    return next(res);
  }
  
  app.use(function (err,next) {
    res.status(err.status || 500).json({status: err.status,message: err.message})
  });

  res
    .status(error.code || 500)
    .json({ message: error.message || "An unkNown error occurred." });
});

app.listen(5000);

我对此非常困惑。 在生产环境中调用localhost:5000是否可以,还是仅在我的开发环境中调用localhost?我对为什么它可以在桌面而不是iPhone上使用感到困惑。 / p>

任何帮助将不胜感激。我是这里的Node / Express newb

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。