1

こんにちは、モバイル アプリ用の REST Web サービスのシナリオをテストしています。テスト中は、ポスト メソッドを使用して PHP プログラムに配列を送信する必要があります。私はcURLコンソールからやっています。配列を渡すことを除いて、残りの部分は正常に機能しています。変更を提案してください。

次のコードはcURLコンソールで渡しています

C:\curlw32>curl -H "Content-Type: application/json" -X POST http://localhost/slim-login/api/submit -d "{\"specialtyCheckbox\":\"[1,2,3]\"}"

そして、ここにそれをキャッチするためのphpコードがあります

$request = Slim::getInstance()->request();
$onsubmit_content = json_decode($request->getBody());
$spec=$onsubmit_content->specialtyCheckbox;
echo json_encode(count($spec));

ここでは、配列の長さが 1 を示しています。

4

4 に答える 4

2

配列の周りに引用符を使用しないでください (json 配列を送信する場合):

"{\"specialtyCheckbox\":[1,2,3]}"
于 2013-04-10T10:12:22.853 に答える
0

CURL呼び出しで配列を渡したい場合、答えは非常に簡単です。すべての入力パラメータを次のように配列に入れます-

$post = array('prgmCode'=>'3',
                'userStateCode'=>'TA',
                );

これに入力配列を渡す必要がある場合は、設定できます

`$chkBoxArr = array(1,2,3,4);
$post = array('prgmCode'=>'3',
                'userStateCode'=>'TA',
                'chkBoxArr'=>$chkBoxArr
                );`

関数 http_build_query() を使用して、配列からクエリ文字列を作成できます。

`$data = http_build_query($post);`

そして、データをcurlに設定します

`curl_setopt($curlSession, CURLOPT_POSTFIELDS, $data);`

サーバー側でリクエストを確認してください。終わり。:) :)

于 2015-02-03T07:15:41.023 に答える
0

PHPスクリプトを介して配列を渡してみてください(CURLを使用)

$ch = curl_init ($url); // your URL to send array data
curl_setopt ($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); // Your array field
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec ($ch);

print_r($result);
于 2013-04-10T10:12:40.040 に答える