我有一个cakephp函数,它授权一个http套接字,然后使用该套接字从远程服务器上传文件。对服务器上的某些文件来说,一切正常,但其中一些文件没有完全传输。
我看了wireshark上发生的事情(虽然我了解得很少),我的服务器似乎正在发送ssl警报21,我相信这意味着它无法解密接收到的数据。然后它开始向远程服务器发送被忽略的重置请求。
当我通过浏览器下载文件时,文件下载很好。我现在完全被卡住了,还有什么我可以看的吗?

public function connect() {
  $httpSocket = new HttpSocket();
  $zipFile = fopen(TMP . 'cif_schedule.gz', 'w');

  $postData = array('j_username' => 'my_username', 'j_password' => 'my_password');
  $authResponse = $httpSocket->post('https://login_url', $postData, array('redirect' => true));

  $httpSocket->setContentResource($zipFile);
  $fileResponse = $httpSocket->get('file_url', array(), array('redirect' => true));

  fclose($zipFile);
}

最佳答案

我认为应该改用put,因为post只用于传递数据。
Put用于归档。

http://api.cakephp.org/2.3/class-HttpSocket.html#_put

关于file - CakePHP HTTPsocket POST文件上传,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12025245/

10-10 08:53