努力为我的应用程序构建一个JS/PHP验证函数
Struggling to build a JS/PHP validation function for my app
我有一个web服务,当查询web服务并找到匹配时,它返回一个JSON对象,下面是一个成功返回的示例:
{"terms":[{"term":{"termName":"Focus Puller","definition":"A focus puller or 1st assistant camera..."}}]}
如果查询没有产生匹配,则返回:
Errant query: SELECT termName, definition FROM terms WHERE termID = xxx
现在,当我通过我的Win 8 Metro应用程序访问它时,我使用以下代码解析JSON符号对象以获得JS对象:
var searchTerm = JSON.parse(Result.responseText)
searchTerm
并将返回值绑定到应用程序页面控件的代码。如果我输入一个成功的查询,在DB中找到匹配,一切都很好。
我无法解决的是验证错误查询的方法。我想测试由var searchTerm = JSON.parse(Result.responseText)
返回的值,并继续做我现在正在做的事情,如果它是一个成功的结果,但是在失败时处理结果不同。要验证这一点,我应该做什么检查?我很高兴在我的应用程序或web服务中实现额外的验证,任何建议都很感激。
谢谢!
有两种不同的方法来实现这一点。
一种方法是利用HTTP响应头来传递关于查询的信息(例如,找到记录的HTTP 200
状态,未找到记录的404
状态,错误请求的400
状态,等等)。然后,您可以检查响应代码以确定需要做什么。这种方法的优点是不需要对响应消息格式进行任何更改。缺点可能是您必须修改返回的头。这是真正的RESTful服务使用的更典型的方法。
另一种方法可能是作为结构化JSON响应的一部分返回成功/错误消息。这样您的JSON可能看起来像:
{
"result":"found",
"message":
{
"terms":[{"term":{"termName":"Focus Puller","definition":"A focus puller or 1st assistant camera..."}}]}
}
}
显然可以改变数据中result
的值以返回一个错误,并将错误消息放在message
中。
这里的优点是您不必担心头修改,并且您返回的数据始终可以通过JSON.parse()
进行解析。缺点是现在您的回复消息中有额外的冗长。
- Sails.js:同时发布文本输入和一个文件
- 是否有一个JS/jQuery函数可以获取某个类的每个元素的ID
- Angular js-返回一个包含类似
- 使用CSS或js,使用动态选择器选择任意li的下一个元素
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 如何在react js中将值从一个组件发送到另一个组件
- 为什么要包装每一个原型“;类“;JS中具有匿名函数的对象
- Ember.js - 一个视图多个布局(已登录/未登录)
- Ember.js:一个模型如何观察其他模型
- 三.js一个物体可以同时旋转和移动吗?
- 护照 JS - 一个登录表单 - 重定向到不同的 URI,具体取决于用户角色
- Backbone JS:一个视图可以触发其他视图的更新
- WebGL/Three.js一个复杂对象(网格)上的不同材质
- Backbone.js一个模型被多个视图修改
- Html5 js一个页面看起来多页面
- Ext JS -一个开始
- JQuery / JS -一个选择器用于多个输入
- 开始使用Underscore.js(一个简单的运行程序)
- (video - js)一个视频出错会导致其他所有视频无法播放
- 欧芹.js - 一个多步骤功能适用于所有形式