0

我有一个向 PHP 表单发送 POST 请求的 iOS 应用程序。我修改了 PHP 表单以向第三方 API 发送另一个 POST 请求(使用 cURL)。问题在于,在 iOS 中,returnString是来自 cURL 的响应,我只想从 cURL 响应中返回一部分。

iOS 代码:

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
NSMutableData *body = [NSMutableData data];
//fill body
[request setHTTPBody:body];
//return and test
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
NSLog(@"returnString = %@",returnString);

在 PHP 中我有这个:

$post = '{"score":1337,"playerName":"Sean Plott","cheatMode":false}';
$theurl = "https://api.parse.com/1/classes/GameScore";
$ch = curl_init($theurl);

$headers = array(
    'X-Parse-Application-Id: myAppID',
    'X-Parse-REST-API-Key: myKey',
    'Content-type: application/json',
);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 

$response = curl_exec($ch);
$responseArray = json_decode($response, true);
echo $responseArray[0];

如您所见,我试图仅将responseArray的第一个元素返回到 iOS 。但是,我得到了 cURL POST 的完整响应(即使没有回声)。

我知道我可以修改 iOS 应用程序以解析完整响应并获取第一个元素。但是,我试图不更新应用程序只是用于返回带有 echo 语句的单个元素的后端方法。

这可能吗?如何让 PHP 不返回 cURL POST 的完整响应而只返回其中的一部分?

谢谢!

4

0 回答 0