当前位置: 首页 > 知识库问答 >
问题:

如何使用React JS和Node JS发布REST API

楚雪松
2023-03-14

我尝试了很多次,但得到以下错误

http://localhost:3001/getlocaiton net::err_connection_delection和createError(createError.js:17)位于xmlHttpRequest.handleerror(xhr.js:87)。

axios.post ('http://localhost:3001/getLocaiton' , {
      name: keyWord,

    })  

    .then (function (response){
      console.log (response);
    })

    .catch (function (error){
      console.log (error)
    });
    const express = require ('express');
    const bodyParser = require ('body-parser');
    const cors = require ('cors');
    const Client = require('node-rest-client').Client;
    const client = new Client ();
    const http = require('http')

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

    app.use (bodyParser.urlencoded ({extended :false}))
    app.use(bodyParser.json());
    const server = http.createServer(app)
    server.listen(port)


    app.post ('/getLocaiton' , (req, res) =>{
        const typeWord = req.body.name;

        client.get ('https://api.adform.com/v1/help/buyer/advertisers= '+typeWord+"&key=", function (data, response){
            console.log (data);

            console.log (response);
        })
    })

    app.listen (3001, ()=> {
        console.log ("listining to port 3001")
    })

共有1个答案

邵研
2023-03-14

我不知道为什么要通过侦听两个端口来启动两个服务器实例,但我注释了第一个端口侦听,您必须返回对/getlocaiton请求的响应(顺便说一下,路径名中有一个错误):

const express = require ('express');
const bodyParser = require ('body-parser');
const cors = require ('cors');
const Client = require('node-rest-client').Client;
const client = new Client ();
const http = require('http')

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

app.use (bodyParser.urlencoded ({extended :false}))
app.use(bodyParser.json());
// const server = http.createServer(app)
// server.listen(port)


app.post ('/getLocaiton' , (req, res) =>{
    const typeWord = req.body.name;
    client.get('https://api.adform.com/v1/help/buyer/advertisers='+
        typeWord+
        "&key=",function (data, response){
            console.log (data);
            console.log (response);
            // you must return your response to your request
            res.json({
                data: data
            })
        }
    )
})

app.listen (3001, ()=> {
    console.log ("listining to port 3001")
})
 类似资料:
  • 问题内容: 我正在尝试使用nodejs和node_redis构建一个通用的发布/订阅服务器,该服务器接收带有通道名称的浏览器的请求,并以该通道也已发布的任何数据作为响应。为此,我使用了来自浏览器的长轮询请求,并通过在通道上收到消息时发送响应来处理这些请求。 对于每个新请求,都会创建一个对象来订阅该频道(如果且仅当该频道不存在时)。 这是处理订阅渠道的最佳方法,还是还有其他更直观的方法? 问题答案:

  • 问题内容: 开始使用redis作为sub / pub系统在新项目上工作,以显示mysql数据库的结果。因此,如果有更新,我想将这些更新从mysql发布到我的网页。我的问题是,哪种选择更好? 选项1:是否应该仅通过nodejs和socket.io完成所有这些工作?意思是创建一个连接到redis的nodejs脚本,订阅我需要收听的频道,在nodejs中使用mysql查询数据库以获取更新,如果更新发布了

  • 我有以下请求,我想在nodejs中写一个post请求: POST /rest-api/hashDb/createAndUploadHTTP/1.1 主持人:192.168.101.54 连接:保持活力 内容长度:428 产地:https://192.168.101.54 用户代理:Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KH

  • 问题内容: 我已经检查了很多有关django AJAX表单的教程,但是每个教程都告诉您一种实现方法,它们都不是简单的,而且由于我从未使用过AJAX,所以我有点困惑。 我有一个名为“ note”的模型,它的模型形式,并且在模板内,我需要每次note元素发送stop()信号(来自jQuery Sortables)时django更新对象。 我当前的代码: views.py JavaScript: 当前代

  • 我正在使用react router和react router redux处理我页面上的导航。我需要在组件内以编程方式更改url。我试着用这个方法:历史。推送实现这一点,但此方法只是更改url,与此url关联的组件不会更新。此应用程序是带有分页的简单列表,因此当我切换到下一页时,url会更改为例如/posts/1到/posts/2,但视图不会更新。我认为这应该是这样的: 用户单击分页项并单击处理程序

  • 问题内容: 如何在React组件的方法内部使用注释? 我有以下组成部分: 我的评论显示在用户界面中。 在组件的渲染方法中应用单行和多行注释的正确方法是什么? 问题答案: 因此,在方法内允许使用注释,但为了在JSX中使用它们,必须将它们用大括号括起来并使用多行样式的注释。 您可以在此处阅读有关注释如何在JSX中工作的更多信息

  • 这里是我的演示:https://stackblitz.com/edit/react-pwdkse注意:使用您的浏览器控制台而不是Stackblitz的控制台。似乎浏览器控制台在信息反馈方面要完整得多 谢谢你的提示