2012-05-31 70 views
1

我与AS2/PHP运行的应用程序。 AS2通过$ _POST数据阵列与PHP脚本进行通信,该数组包含sessionkey,userID和某些数据库过滤(sql limit,order by etc.)等数据。添加参数休息GET请求

该应用程序的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请求参数? (和POST的PUT/POST)

回答

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 
+0

以及“凭据”数据呢?如会话密钥,客户端ID或请求所需的其他任何数据,但不直接过滤结果? – kitensei

+0

@Kitensei,会话密钥也应该是一个查询参数,因为它可能需要GET和POST请求。不知道客户端ID - 你不能从会话密钥中派生出来吗?如果不是,它应该也可能是一个查询参数。 –

+0

我已经编辑了我的问题来显示我用来发送/接收的参数,应用程序已经很大,并且我没有开发,所以我做的最少的修改就是最好的。 – kitensei