javascript - Bagaimana nod meminta pelayan lain.
迷茫
迷茫 2017-06-29 10:08:40
0
4
838

Projek ingin menggunakan nod sebagai lapisan tengah
Pelayar lapisan pertama menghantar permintaan ke nod
Nod lapisan kedua menghantar permintaan ke php
Saya tahu sedikit tentang nod dan rangka kerja meminta untuk php untuk mendapatkan data dan mengembalikannya ke meja depan? Adakah terdapat kaedah yang mudah dan mudah difahami.

Saya boleh mendapatkan data selepas menggunakan http-proxy-middleware, tetapi saya mahu memadankan laluan dan kemudian menghantar permintaan ke latar belakang untuk memaparkan templat ejs.

const apiProxy = proxy('/do', { target: 'http://wx.lxjjz.cn',changeOrigin: true });//将服务器代理到localhost:8080端口上[本地服务器为localhost:3000]
app.use('*', apiProxy);//子目录下的都是用代理
 
app.get('/index', function(req,res){
     //我想在这里匹配到路由,然后在这里发送请求拿数据
     //然后根据返回的数据传送到ejs模版渲染
     res.sendFile(__dirname+'/index.html');
});
 

Pelanggan

var contextPath = 'http://wx.lxjjz.cn';
                $.ajax({
                    type:'get',
                    url:contextPath+'/do?g=api&m=hd&a=works-list',
                    success:function(data){
                        console.log(data);
                    },
                    error:function(data){
                        console.log(data);
                    }
 
                })
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

membalas semua(4)
滿天的星座

Node mempunyai pelbagai perpustakaan permintaan. Terdapat juga permintaan yang datang bersamanya

Seluruh proses mungkin

  1. Pelanggan meminta pelayan nod

  2. Pelayan nod meminta php dan kemudian membungkus data respons yang dikembalikan

  3. Kembalikan data berpakej di atas kepada pelanggan

Apa yang anda perlu beri perhatian ialah mengendalikan panggilan balik Jika anda ingin kelihatan lebih baik, anda boleh menggunakan modul promise atau co untuk mengendalikan kod tak segerak.

迷茫

Terdapat pelbagai penyelesaian untuk ini, izinkan saya bercakap tentang yang kami gunakannode-rest-client
比如使用express,自己写个路由,如果/ajaxIa digunakan untuk menerima permintaan bahagian hadapan
Semua permintaan bahagian hadapan dihantar ke /ajax, dan kemudian dalam /ajax, gunakan node-rest- pelanggan untuk memajukan permintaan ke php, selepas php mengembalikan data, res.json(data) sudah cukup
Sudah tentu, anda perlu merangkum dan menyatukan data sendiri semasa proses ini macam ni

刘奇

http-proxy-middleware

Ty80

Jika ia hanya dimajukan melalui proksi,

Jika lapisan tengah tidak merangkum sebarang data, anda boleh menggunakan perisian tengah ini:

https://github.com/chimurai/h...

Biasanya, nod digunakan untuk enkapsulasi data Lapisan API tidak mengambil berat tentang perniagaan, jadi ia boleh dipisahkan

Kemudian anda perlu membuat pelbagai antara muka secara berasingan, dapatkan data, susun semula sendiri menggunakan lodash dan moment, dan hantar ke meja depan,

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan