React native react native fs在模拟器上工作但在实际设备上不工作的可能原因
RNFS下载的代码段在emulator中工作起来像一个符咒,但在实际设备中却不是 以下是我的片段:React native react native fs在模拟器上工作但在实际设备上不工作的可能原因,react-native,React Native,RNFS下载的代码段在emulator中工作起来像一个符咒,但在实际设备中却不是 以下是我的片段: console.log("FILE URL: " + FILE_URL); // http://localhost:8081/server/public/sentfile/60b5a385e2416132e4e0c495_60b5a0c7e2416132e4e0c494/7gyic4f659ddsp10jvhsw2489.png let ext = FILE_URL.split
console.log("FILE URL: " + FILE_URL); // http://localhost:8081/server/public/sentfile/60b5a385e2416132e4e0c495_60b5a0c7e2416132e4e0c494/7gyic4f659ddsp10jvhsw2489.png
let ext = FILE_URL.split(".").pop();
const localFile = `${RNFS.DocumentDirectoryPath}/tmp.` + ext;
console.log("LF: " + localFile) // /data/user/0/com.neotechapp/files/tmp.png
let options = {
fromUrl: FILE_URL,
toFile: localFile
};
RNFS.downloadFile(options).promise
.then((res) => {
console.log("RES: " + JSON.stringify(res))
FileViewer.open(localFile);
})
.then((res) => {
// success
})
.catch((err) =>{
console.log(err);
});
在我的实际设备上,它返回一个错误
[错误:无法连接到本地主机/127.0.0.1:8081]
您试图从本地服务器下载文件”http://localhost:8081“
在您的设备上,这将指的是手机本身,而不是服务器。
因此,您需要的是使用公共IP(例如“192.168.1.2”)
在windows上,使用
ipconfig
查找您的计算机IP。对于linux使用ifconfig
你能通过选项对象吗?我添加了选项和其他可能相关的信息。我明白了。让我试试。谢谢。顺便说一句,在我的调试服务器主机和端口上,它已经在检查服务器IP和端口了。从来没想过。非常感谢。出于测试目的,我刚刚在服务器ip中添加了一个替换本地主机。