1

Curlライブラリを使用して「multipart-form-data」送信をシミュレートしているので、一意の文字列を生成する必要があることに気付きましたが、その方法がわかりません。

例えば:

Content-Type: multipart/form-data;  
boundary=---------------------------491299511942
Content-Length: 95418
-----------------------------491299511942
Content-Disposition: form-data; name="a"
-----------------------------491299511942
Content-Disposition: form-data; name="b"
/page.asp
-----------------------------491299511942
Content-Disposition: form-data; name="c"
-----------------------------491299511942
Content-Disposition: form-data; name="d"
true
-----------------------------491299511942
Content-Disposition: form-data; name="e"
1
-----------------------------491299511942
Content-Disposition: form-data; name="f"

その境界を生成する方法は?ライブラリからですか、それともハックからですか?

編集:この例ではBoundary = 491299511942

4

2 に答える 2

3

curlを使用している場合は、「手動で」データを準備する必要はありません。

$post_data = array(
    'a' => '@/absolute/path/to/file',
    'b' => '@/absolute/path/to/file',
);
curl_setopt($ch, CURLOPT_POST, true)
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); 
于 2012-08-06T09:30:31.713 に答える
3

実際の質問に答えるには、次のようなことを行うことができます。

$boundary = hash('sha256', uniqid('', true));
于 2016-09-22T09:56:16.227 に答える