http请求,如果问题
问题描述:
所以我必须做一个http请求调用只有当用户输入纬度,lng在输入,所以这意味着在服务器端我必须检查,如果输入设置或不。如果是这样,那么我想添加这些数据,再加上一些数据到数据库。如果没有设置,那么我只想将更多的数据保存到数据库中。http请求,如果问题
现在我在if {}和else {}中运行相同的代码。有没有办法让我避免这种情况?
答
摘录出您的if
和else
语句中的代码,并使其成为一个函数,它接受一个对象并将其保存到数据库中。然后调用该函数,传递响应对象(或替代的对象,如果你事先做了一些工作。)
function persist_data(response) {
// Do work to set up the database
database.save(response);
}
function respond_to_user_input(req, res) {
var response = {};
// Populate the necessary data into the response object
if (user_has_provided_lat_and_lng) {
// Set up your response object to include lat an lng
persist_data(response);
} else {
// Include only the *other* data
persist_data(response);
}
}
有最有可能已工具,在那里帮助你和你正在做的事情 - 如果你显示了一些你正在尝试做的这个答案,可以得到一个批次不那么通用。 :-)
答
你只需要测试args,lat和lng是否都有信息。在这两种情况下,您必须保存allData或someData。 因此,要做到这一点,最好的方法是(恕我直言):
var lat = (lat != '') ? lat : 0;
var long = (lng != '') ? lng : 0;
saveDataToDB(lat, long, somedata);
因此,如果值是0或“”,您保存0(认为这两个值是数字)
请澄清一下,我们愿意帮助,但澄清更多。如果可能的话,显示一些代码。 – nemesisfixx 2011-04-26 22:01:08