不确定这是否是问这个问题的正确地方,我有几个使用超薄php框架构建的web服务,我已经成功地集成到一个移动应用程序中,我想为相同的应用程序构建一个web界面,我最好的选择是什么?我知道我可以使用JavaScript来实现这一点,但我的主要困惑是如何从前端调用这些REST以及使用哪个框架。
发布于 2017-02-11 16:48:59
我想建立一个相同的web界面,我最好的选择是什么?
您的最佳选择取决于您的总体要求和设置。如果您想在Web界面中提供与移动应用程序相同的功能,请使用复杂的框架,如AngularJS、BackboneJS、Ember等。
外面有很多人。了解这些框架是如何工作的,以及这些工作流是否适合您的需求,这一点很重要。首先,我建议您先看看AngularJS。
我知道我可以使用JavaScript来做这件事,但是我主要的困惑是如何从前端调用这些REST以及使用哪个框架。
如果不使用任何框架,则可以使用普通的Javascript或jQuery调用REST端点。下面是一个使用普通JS的示例:
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://example.org/api/...", true);
//register listener
xhr.onreadystatechange = function() {
...
}
xhr.send();
像AngularJS这样的框架有预置的组件来调用REST API。
陷阱可能是您必须启用CORS,这取决于您的设置。确保您的服务器适当地处理这些请求。您必须在服务器端设置这些标头:
header("Access-Control-Allow-Origin: [YOUR_HTTP_DOMAIN_NAME]");
header('Access-Control-Allow-Credentials: true');
header("Access-Control-Allow-Methods: GET, POST, OPTIONS, PUT, PATCH");
但由于您的移动应用程序使用的是REST API,因此web界面上的这些调用应该类似于您的移动调用。
发布于 2017-02-11 14:50:52
您可以使用jquery(http://api.jquery.com/jquery.get/)或XR(https://www.npmjs.com/package/xr)或request (https://www.npmjs.com/package/request)等从任何web界面调用REST web服务。
这些链接包含几个示例。
https://stackoverflow.com/questions/42173087
复制相似问题