2

myimg.jpgSag を使用して GET したい画像が添付されたドキュメントがあります。

私のブラウザでは、この URL にアクセスすると、この画像を取得できます: http://localhost:5984/mydb/thedocid/myimg.jpg.

sag を使用すると、ドキュメントを取得できますが、添付ファイルを取得できません。次のように画像を取得しようとしました:

$img = $sag->get('thedocid/myimg.jpg')->body;

画像を取得する代わりに、PHP が応答しなくなったようです。また、JSON デコードを無効にすると解決するかもしれないと考えましたが、それでも PHP が応答しなくなります。

$sag->decode(false);
$img = $sag->get('thedocid/myimg.jpg');

私は何を間違っていますか?Sag を使用して添付ファイルを適切に取得するにはどうすればよいですか?

編集:しばらくして、添付ファイルが取得されました。なぜそんなに遅いのですか?添付ファイルはわずか 4kb です。

4

1 に答える 1

2

私の最初のコードが応答しない/非常に遅い理由はまだわかりませんが、Dave のコメントのおかげで、添付ファイル付きのドキュメントを取得する別の方法が得られました。

$doc = $sag->get('thedocid/?attachments=true')->body;
$img = base64_decode($doc->_attachments->{'myimg.jpg'}->data);
于 2014-07-14T23:00:02.437 に答える