私はまだ初期段階のiOS開発者ですが、フルタイムのPHP開発者です。iOS開発者のアプリケーションがPOSTを介してWebサービスを呼び出しますが、何らかの理由で、Webサービスが応答を正しく受信していません。
彼が開発したObjective-Cコードは次のとおりです。
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
NSData* requestData = [NSData dataWithBytes:[@"{\"method\":\"referrals\",
\"params\":
[{\"iv\":\"some iv value\",
\"data\":
{\"first_name\":\"pEBquIatFcWCrgEVHFhzhw==\",
\"cellular_ipv4\":\"ypMBZu80ZIeVrTpEH0daTg==\",
\"last_name\":\"353YvmRmSw9sKQ+lBrKKcg==\",
\"email\":\"tTiWcT14kuVVgmKuu7PoIw==\",
\"sent_via\":\"69JPdtxeHCAdG/cECGYg5A==\"}
}],
\"id\":\"1\"}" UTF8String] length:[reqString length]];
[request setHTTPMethod:@"POST"];
[request setValue:[NSString stringWithFormat:@"%d", [requestData length]] forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody: requestData];
if (urlConnection != nil) {
[urlConnection release];
urlConnection = nil;
}
urlConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];
[request release];
私たちが知る限り、それはキー「紹介」に添付されたPOSTを介してデータを送信しています。ただし、私のPHPWebサービスが$_POST変数で「referrals」キーをチェックしても、それが見つかりません。関連するPHPコードは次のとおりです。
if(array_key_exists('referrals', $_POST))
{
//some code
}else
{
//error response
}
// Send JSON response
//header('Content-type: application/json');
echo $message;
iOSアプリは一貫してエラー応答を返します。これは、「referrals」が$_POSTに存在しない場合にのみ設定されます。CURLを使用してPHPWebサービスの単体テストを行い、一貫して成功した結果を取得しました。
エラーはどこにありますか?