作者 邓超

m

... ... @@ -68,7 +68,10 @@ class Body {
*/
private function parseBoundaryBody(string $body, string $boundary){
// 切割成块 boundary 的结束符号 前后都会多2个--
$items = explode($boundary,
// 为什么要加 \r\n在签名进行切割呢 是因为 boundary分割符只会占单独的一行,
//有一些服务商会把header头一起返回,header里面包含了这个符号,
//如果不加\r\n 就会导致 切割异常
$items = explode("\r\n".$boundary,
str_replace(['--'.$boundary.'--', $boundary.'--','--'.$boundary],$boundary,$body)
);
// 第一个块和最后一块 是没用的块
... ... @@ -167,6 +170,7 @@ class Body {
break;
}
case '8bit':{
$data->body = mb_decode_mimeheader($data->body);
break;
}
}
... ...