使用fetch将数据发送到Node.js服务器

使用fetch将数据发送到Node.js服务器,node.js,express,react-native,fetch,Node.js,Express,React Native,Fetch,我不熟悉React Native和Node.js,所以这个问题可能很明显。我已经从“app.js”运行了React本机应用程序 从“React”导入React; 从“react native”导入{样式表、文本、视图、按钮}; 导出默认类App扩展React.Component { render() { 返回( ); } 女佣() { 取('http://10.222.22.22:3000/',{ 方法:“POST”, 正文:JSON.stringify({ a:你好 }), 标题:{“内容类

我不熟悉React Native和Node.js,所以这个问题可能很明显。我已经从“app.js”运行了React本机应用程序

从“React”导入React;
从“react native”导入{样式表、文本、视图、按钮};
导出默认类App扩展React.Component
{
render()
{
返回(
);
}
女佣()
{
取('http://10.222.22.22:3000/',{
方法:“POST”,
正文:JSON.stringify({
a:你好
}),
标题:{“内容类型”:“应用程序/json”}
})
.然后(功能(响应){
返回response.json()
}).catch(错误=>console.log(错误));
}
}
const styles=StyleSheet.create({
容器:{
弹性:1,
背景颜色:“#fff”,
对齐项目:“居中”,
为内容辩护:“中心”,
},

});尝试将您的
手柄按钮
声明为箭头功能

 handlePress = () => {
    // ... your fetch code
 }

ngrok
允许您向internet公开在本地计算机上运行的web服务器。 参考-

设置非常简单

  • 通过
    npm i ngrok-g从npm全球下载ngrok

  • 打开终端并运行
    ngrok http 3000
    (因为您的服务器正在端口3000上运行)

  • 您将获得类似
    https://3e8a70f45d9b.ngrok.io
    (该链接对您来说是唯一的)

  • 在另一个终端上运行服务器,并在另一个终端上运行react本机应用程序

  • 现在将您的URL从更改为从步骤3获得的链接

  • 注意:登录ngrok.com允许您有额外的会话时间,这与默认超时会话不同,默认超时会话为2小时


    您是否收到任何错误?您确定正在调用
    handlePress
    ?乍一看,这里什么也看不见。@Cristy,没有errors@JackRyan是的,它被称为我有一个控制台日志,在它看起来没有从客户端连接到服务器之前。获取后是否检查了客户端控制台?这不重要,因为它不访问任何类成员,也可以是静态函数。