Heim > Backend-Entwicklung > PHP-Tutorial > 关于Node.js 接收 Http POST

关于Node.js 接收 Http POST

WBOY
Freigeben: 2016-06-06 20:36:47
Original
1148 Leute haben es durchsucht

是这样的
现在要用Android 传递 Http post 请求到 Node.js
以前我试过用PHP接收Http请求 , 它是这样子的:

<code>$data = $_POST['data'];
</code>
Nach dem Login kopieren
Nach dem Login kopieren

Android則是这样的

<code> HttpPost httpRequest = new HttpPost("192.168.1.174:3001");
 List<namevaluepair> params = new ArrayList<namevaluepair>();

 params.add(new BasicNameValuePair("data",etv.getText().toString()));

 try{
    httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
    HttpResponse httpResponse = new DefaultHttpClient()
                                    .execute(httpRequest);
    if (httpResponse.getStatusLine().getStatusCode() == 200){
        String strResult = EntityUtils.toString( httpResponse.getEntity() );
        Log.d("HTTP", strResult);
    }
 } catch (Exception e){
   e.printStackTrace();
 }
</namevaluepair></namevaluepair></code>
Nach dem Login kopieren
Nach dem Login kopieren

可是在Node.js 我该怎样做?
Node.js 带没有类似$_POST的方法?

回复内容:

是这样的
现在要用Android 传递 Http post 请求到 Node.js
以前我试过用PHP接收Http请求 , 它是这样子的:

<code>$data = $_POST['data'];
</code>
Nach dem Login kopieren
Nach dem Login kopieren

Android則是这样的

<code> HttpPost httpRequest = new HttpPost("192.168.1.174:3001");
 List<namevaluepair> params = new ArrayList<namevaluepair>();

 params.add(new BasicNameValuePair("data",etv.getText().toString()));

 try{
    httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
    HttpResponse httpResponse = new DefaultHttpClient()
                                    .execute(httpRequest);
    if (httpResponse.getStatusLine().getStatusCode() == 200){
        String strResult = EntityUtils.toString( httpResponse.getEntity() );
        Log.d("HTTP", strResult);
    }
 } catch (Exception e){
   e.printStackTrace();
 }
</namevaluepair></namevaluepair></code>
Nach dem Login kopieren
Nach dem Login kopieren

可是在Node.js 我该怎样做?
Node.js 带没有类似$_POST的方法?

支持楼上建议的使用Express,几行代码就可以搞定了

<code>var http = require("http");
var express = require("express");
var app = express();

app.post('/route_you_want', function(req, res){
    //你可以在这里处理post请求
    res.send("hello world");
    res.end();
});

http.createServer(app).listen(3000, function(){
    console.log("server start");
});
</code>
Nach dem Login kopieren

有 但是系统自带的post处理比较复杂 具体使用方法可以谷歌一下 推荐使用web框架,比如说express

单用express也不是很方便,题主还可以试试加上一个叫multer的中间件,今天刚试过,挺好用的

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage