2017-08-08 48 views
0

我们对编程非常陌生,并且有一个简单的问题。我们正在开发一个非常简单的Google搜索应用程序,可以使用客户端 - 服务器通信在Google上搜索字符串我们在这里有一个简单的Javascript子集:我需要将我的前端Javascript代码连接到我的服务器端NodeJS代码。我该怎么做呢?

var firstName = some_string 
var lastName = some_string 
var googleSearch = firstName + lastName; 
googleSearch = JSON.stringify(googleSearch); 

我们需要将此代码链接到我们的NodeJS代码以进行实际搜索。

var google = require('google'); 
google.resultsPerPage = 25; 
var nextCounter = 0; 

google(googleSearch, function(err,res) { // Note googleSearch is from 
              // the frontend Javascript code 
              // that we want to pull the data from. 
    if (err console.error(err) 
    var link = res.links[0]; 
    console.log(link.href); 
    var myLink = link.href; 


}) 

我们希望从我们的前端代码googleSearch变量取数据,并利用它在我们的服务器端代码。然后,我们要将来自我们服务器端代码中的myLink的数据显示回我们的前端代码。

回答

0

您需要做的是从前端向您的服务器发出Ajax请求。

如果你使用jQuery的,你可以,如果你使用的是快速与节点做这样的事情

$.ajax({ 
    url: YOUR_SERVER_URL+"/getData", 
data: { 
    "google_search": googleSearch, 
}, 
method: "GET", 
//use data type json if your server returns json 
dataType: "json", 
success: function(result) { 
    console.log("data fetched Successfully"); 
    //result is the data your server returned. 
    console.log(result); 
}, 
error: function() { 
console.log("Something went wrong, data could not be fetched"); 
} 
}); 

在您的服务器端, 你可以做这样的事情返回JSON:

var app = express(); 
app.get('/getData', function(req, res, next) { 
      var google = require('google'); 
      google.resultsPerPage = 25; 
      var nextCounter = 0; 
      //getting query data that you passed from front end 
      var googleSearch = req.query.google_search; 
      google(googleSearch, function(err, res) { 
        if (err console.error(err) var link = res.links[0]; console.log(link.href); 
         var myLink = link.href; 
        }) 
       //sending json data as response 
       res.json(myLink); 
      }); 

如果您使用的是本地主机,那么您的服务器网址将类似于“https://localhost:5000”。

相关问题