此模块为'request https://github.com/mikeal/request
我想我正在关注每一步,但我错过了一个争论......
var request = require('request');
request.post({
url: 'http://localhost/test2.php',
body: "mes=heydude"
}, function(error, response, body){
console.log(body);
});
在另一端我有
echo $_POST['mes'];
我知道php没有错......
答案 0 :(得分:171)
编辑:您应该查看Needle。它为您完成此任务并支持多部分数据等等。
我发现我错过了标题
var request = require('request');
request.post({
headers: {'content-type' : 'application/x-www-form-urlencoded'},
url: 'http://localhost/test2.php',
body: "mes=heydude"
}, function(error, response, body){
console.log(body);
});
答案 1 :(得分:73)
将request
用于http POST时,您可以通过以下方式添加参数:
var request = require('request');
request.post({
url: 'http://localhost/test2.php',
form: { mes: "heydude" }
}, function(error, response, body){
console.log(body);
});
答案 2 :(得分:33)
如果您要发布json正文,请不要使用form
参数。使用field[0].attribute
会将数组转换为field[1].attribute
,body
等,而是使用var jsonDataObj = {'mes': 'hey dude', 'yo': ['im here', 'and here']};
request.post({
url: 'https://api.site.com',
body: jsonDataObj,
json: true
}, function(error, response, body){
console.log(body);
});
。
TransDateTime
答案 3 :(得分:29)
我必须在没有表格的情况下发布键值对,我可以像下面那样轻松地完成:
var request = require('request');
request({
url: 'http://localhost/test2.php',
method: 'POST',
json: {mes: 'heydude'}
}, function(error, response, body){
console.log(body);
});
答案 4 :(得分:16)
var request = require('request');
request.post('http://localhost/test2.php',
{form:{ mes: "heydude" }},
function(error, response, body){
console.log(body);
});
答案 5 :(得分:9)
使用npm install request
在代码中:
var request = require('request');
var data = '{ "request" : "msg", "data:" {"key1":' + Var1 + ', "key2":' + Var2 + '}}';
var json_obj = JSON.parse(data);
request.post({
headers: {'content-type': 'application/json'},
url: 'http://localhost/PhpPage.php',
form: json_obj
}, function(error, response, body){
console.log(body)
});
答案 6 :(得分:0)
我强烈建议axios https://www.npmjs.com/package/axios与npm或yarn一起安装
const axios = require('axios');
axios.get('http://your_server/your_script.php')
.then( response => {
console.log('Respuesta', response.data);
})
.catch( response => {
console.log('Error', response);
})
.finally( () => {
console.log('Finalmente...');
});
答案 7 :(得分:0)
我必须从POST
代码的PHP
方法获取数据。对我有用的是:
const querystring = require('querystring');
const request = require('request');
const link = 'http://your-website-link.com/sample.php';
let params = { 'A': 'a', 'B': 'b' };
params = querystring.stringify(params); // changing into querystring eg 'A=a&B=b'
request.post({
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, // important to interect with PHP
url: link,
body: params,
}, function(error, response, body){
console.log(body);
});