问题
我正在开发一个全栈应用程序,当我尝试通过Xcode在物理iPhone上进行测试时,iOS应用程序似乎没有连接到我的客户端服务器的开发服务器上。
我正在将React Native用于iOS应用并将Node作为服务器
有人知道为什么会发生这种情况以及如何解决问题吗?
React Native Console日志中的错误
login error Error: Network Error
at createError (createError.js:16)
at XMLHttpRequest.handleError (xhr.js:87)
at XMLHttpRequest.dispatchEvent (event-target.js:172)
at XMLHttpRequest.setReadyState (XMLHttpRequest.js:580)
at XMLHttpRequest.__didCompleteResponse (XMLHttpRequest.js:394)
at XMLHttpRequest.js:507
at RCTDeviceEventEmitter.emit (EventEmitter.js:190)
at MessageQueue.__callFunction (MessageQueue.js:366)
at MessageQueue.js:106
at MessageQueue.__guard (MessageQueue.js:314)
答案 0 :(得分:0)
我知道了!
答案
您需要将服务器URL从“ http://localhost:port”更改为“ http://computerIPAddress/port”。如果您使用的是.env,建议您在实际进行服务器调用的位置进行更改,因为更改开发.env似乎无效。
这可能不是最好的解决方案,理想情况下,这将是另一个.env文件,因此您无需在想要在物理电话上进行测试的任何时间更改任何代码,但至少可以使用!
如果有人有更清洁的解决方案,我很想听听!