从客户端发送数据获取到服务器端

时间:2018-04-07 09:35:32

标签: javascript node.js ajax express fetch

我正在使用Nodejs,Express,MySQL,body-parser和EJS。

我想要做的是,当有人按下某个按钮时,它会发送PUT请求,该请求会将计数器更新为1,我正在尝试发送按下按钮的ID所以它可以增加1。

    app.put("/toolong", function(req,res){

             console.log(res.status(200).json({voteNum: 5}))           
          }
        )

获取:

function upvote(click){
// when the upvote button is clicked
let idOfClicked;
console.log(event.target.attributes[1].value)
idOfClicked = event.target.attributes[1].value

fetch(`/toolong`, { method: 'PUT', data: {id:9} })
  .then(res => res.json())
  .then(jsonRes => {

    console.log(jsonRes.voteNum) // gives 5

  })
}

我正在尝试将Fetch中的变量idOfClicked发送到我的app.put,这样我就可以使用该变量进行SQL查询。

我认为你能够做到这一点,fetch中的“data”键是我试图看到一些例子,但我无法通过

发送它

2 个答案:

答案 0 :(得分:0)

这是body密钥,而不是data

答案 1 :(得分:0)

我修好了,问题是我的app.put中没有"headers: new Headers({ "Content-Type": "application/json" })",我把它放在"body"

之后