我们对编程很陌生并且有一个简单的问题。我们正在开发一个非常简单的Google搜索应用,可以使用客户端 - 服务器通信在Google上搜索字符串我们在这里有一个简单的Javascript子集:
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
中的数据显示在我们的前端代码中。 class Person(ndb.Expando):
pass
person = Person(fname='some', lname='body')
person_key = person.put()
...
person = person_key.get()
person.city = 'San Francisco'
person.address = '1234 Main St.'
person.put()
位于我们的服务器端代码中。
答案 0 :(得分: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");
}
});
如果您使用带节点的Express,则在服务器端, 你可以通过这样的方式返回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);
});
如果您使用的是localhost,那么您的服务器网址将类似于" https://localhost:5000"。