Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 调用节点js Express api的curl命令是什么_Node.js_Api_Express_Curl - Fatal编程技术网

Node.js 调用节点js Express api的curl命令是什么

Node.js 调用节点js Express api的curl命令是什么,node.js,api,express,curl,Node.js,Api,Express,Curl,我想使用curl cmd调用并传递值来表示api 我希望在express api中访问传递的值 app.post("/myapi",(req,res)=>{ console.log('come her') console.log(req.ip) (*) here I want print passed value from the curl cmd res.send('done') }) 假设我们有一个名为/endpoint的端点,它允许请求主体、请求参

我想使用curl cmd调用并传递值来表示api

我希望在express api中访问传递的值

app.post("/myapi",(req,res)=>{
  console.log('come her')
  console.log(req.ip)
(*) here I want print passed value from the curl cmd
  res.send('done')
})


假设我们有一个名为
/endpoint
的端点,它允许请求主体、请求参数和查询字符串

在Express中,我们的端点可以如下所示:

{ name: 'john' }
{ name: 'john' }
{ name: 'john' }
app.post('/endpoint/:name',(req,res)=>{
//记录请求主体
控制台日志(请求主体);
//记录请求参数
控制台日志(请求参数);
//记录请求查询字符串
控制台日志(请求查询);
//发送对请求的响应
return res.send('Hello,World!');
});
我们在这里所做的是在请求传入后分别注销请求的每个部分。Express中请求最常访问的部分是请求
正文
参数
查询
属性。有关请求对象中可用属性的完整列表,请参阅官方网站

现在,要通过cURL调用端点,我们可以运行以下命令:

curl --location --request POST 'http://localhost:3000/endpoint/john?name=john' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "john"
}'
这将向
/endpoint
端点发送请求,同时通过请求主体、参数和查询字符串发送相同的数据

控制台中的输出应如下所示:

{ name: 'john' }
{ name: 'john' }
{ name: 'john' }
如您所见,请求主体、参数和查询字符串包含相同的值,即使它们以完全不同的格式发送


这提供了极大的灵活性,因为您不可能总是同时需要请求对象上可用的所有属性,建议您选择最适合您的单个项目功能需求的属性。

您可以使用
req.body