我发送此回复:
$item_collections = array('@type' => 'http://activitystrea.ms/2.0/Collection',
'objectID' => $stream_collections->objectID,
'owner' => array('globalID'=>$stream_collections->owner),
'items'=>array());
foreach($stream_collections->streamitem as $Item){
$items = array('item'=>array(
'objectID' => $Item->objectID,
'targetID' => $Item->targetID,
'owner' =>$Item->owner,
'author' => array($Item->author),
'@type' => 'Post',
'published' => $Item->published,
'actor' => array('@type'=>'Person',
'displayName'=>$Item->person->displayName),
'object' => array('@type'=>'Note',
'displayName'=>$Item->text)),
'comments'=>$Item->comment,
'likes'=>$Item->like,
'tags'=>array(),
);
array_push($item_collections['items'], $items);
} return response($item_collections)
因此,如果$Item->comment
或$Item->like
有超过6条评论或喜欢,则回复正文会有一些额外的断行,字母和数字。
在客户端,我试图让身体使用:
list($header, $body) = explode("\r\n\r\n", $response, 2);
当我打印$body
时,我会得到额外的断行和字母:
9201\r\n{\"@type\":\".........}\r\n0\r\n\r\n
我不知道 9201\r\n
和 \r\n0\r\n\r\n
的来源。如果响应不大,一切都会正常工作!有谁知道为什么会这样?