我有一个运行AS2 / PHP的应用程序。 AS2通过$ _POST数据数组与PHP脚本进行通信,该数组包含sessionkey,userID和一些数据库过滤(sql limit,order by etc.)等数据。
计划推出iOS版本的应用程序,我正在尝试找出使用现有服务器端代码并仅重写图形的最佳方法。
问题是我需要大量的数据,理想情况下应该通过$ _POST数组发送到GET http请求中的数据(对不起,如果我不清楚,请不要犹豫,向我提问)。
我已经阅读了这篇文章Understanding REST: Verbs, error codes, and authentication,这让我更了解REST应该如何工作,但我需要向服务器发送更多数据。
例如,假设我想要检索项目集合,请求将是这样的:
GET http://xxx/rest/item
但是如何告诉服务器我只想从集合中检索X个元素,或者甚至是我想要的排序顺序?
先谢谢你的回答
编辑: @laurent,这里收到一个脚本POST参数的例子:
// COMMON PARAMETERS (each script)
$idPROF = Utils_Mv::getVariablePOST('idPROF');
$idVISITE = Utils_Mv::getVariablePOST('idVISITE');
$typeConnexion = Utils_Mv::getVariablePOST('typeConnexion');
$typeSupport = Utils_Mv::getVariablePOST('typeSupport');
$cleSession = Utils_Mv::getVariablePOST('cleSession');
$idCLIENT = Utils_Mv::getVariablePOST('idCLIENT');
$idCONTEXTE = Utils_Mv::getVariablePOST('idCONTEXTE');
// SCRIPT-SPECIFIC PARAMETERS
$idSUIVI = (int) Utils_Mv::getVariablePOST('idSUIVI');
$nbPrescription = (int) Utils_Mv::getVariablePOST('nbPrescription');
$indiceDebut = (int) Utils_Mv::getVariablePOST('indiceDebut');
$critereTri = Utils_Mv::getVariablePOST('critereTri');
$isTriInverse = Utils_Mv::boolval(Utils_Mv::getVariablePOST('isTriInverse'));
$chaineFiltres = Utils_Mv::getVariablePOST('chaineFiltres');
您可以在GET请求中将公共参数作为get参数传递吗? (以及PUT / POST的POST)
答案 0 :(得分:1)
要获得多个项目,我会做这样的事情:
GET http://example.com/items/1_2_3_4
其中1,2,3,4是项目ID。要获得一个项目,您可以这样做:
GET http://example.com/items/1
对于排序顺序,我会将其设为查询参数。通常,REST URL应指向一个或多个资源。任何额外的排序顺序,资源格式等都应该是一个查询参数:
GET http://example.com/items/1_2_3?order=by_name