为了账号安全,请及时绑定邮箱和手机立即绑定

如果我需要将变量传递给服务器但查询是 SELECT,我应该使用哪种类型的 http 请求?

如果我需要将变量传递给服务器但查询是 SELECT,我应该使用哪种类型的 http 请求?

PHP
隔江千里 2022-07-22 18:29:58
我有一个烹饪食谱的博客,在这个博客上注册的用户可以阅读其他用户的帖子。我会查看默认设置:在主页中只能阅读与已登录用户相同城市的帖子。为此,我将一个包含用户 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


查看完整回答
反对 回复 2022-07-22
  • 1 回答
  • 0 关注
  • 90 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信