我有一个烹饪食谱的博客,在这个博客上注册的用户可以阅读其他用户的帖子。我会查看默认设置:在主页中只能阅读与已登录用户相同城市的帖子。为此,我将一个包含用户 ID 的变量传递给服务器,该变量用于执行查询以恢复城市名称。当我检索这个城市的名称时,我可以查询 ( SELECT * FROM recipes WHERE city = '$cityUser' ecc.) 以在主页中显示所有帖子。本博客基于 RESTful 服务模型。用于创建与服务器的连接的 JavaScript 代码: function printAllPosts() { var data = {}; data.id_user = idUser; var jsondata = JSON.stringify(data); var oReq = new XMLHttpRequest(); oReq.onload = function(){document.getElementById("ajaxres").innerHTML = oReq.responseText;}; oReq.open("post", "api_printAllPosts.php/recipes/", true); oReq.send(jsondata); }获取请求的HTTP方法、路径和正文的php代码是:$method = $_SERVER['REQUEST_METHOD'];$request = explode('/', trim($_SERVER['PATH_INFO'],'/'));$input = json_decode(file_get_contents('php://input'),true);如果在oReq.openhttp请求类型中是“post”,则一切正常并且 idUser 被传递到服务器,如果在oReq.openhttp请求类型中是“get”,则它不起作用。如果我将数据传递到服务器并使用“post”方法与其连接,即使我正在发出只读请求并因此是选择查询,我是否尊重 RESTful 服务或者我是否必须实现另一种设计方法来实现“获取”方法?
1 回答
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
通常 apis 将GET用于从 API 读取数据。从概念上讲,GET意思是“给我 uri 的表示”。GET 请求不应该有正文。
下面是一些 uris 的例子
http://api.example/recipes - Give me all recipes
http://api.example/recipes?city=Toronto - Give me all recipes from Toronto(?)
http://api.example/recipes?q=tomato - Give me all recipes that use tomatoes
- 1 回答
- 0 关注
- 90 浏览
添加回答
举报
0/150
提交
取消