服务器响应551,为什么输出fi上的ftp响应551错误

当使用python的ftplib传输文件时,服务器返回551个错误代码模块。但是可以通过手动输入linux命令成功传输。在

在Linux服务器上运行python2.7代码。在def upload(self, file_local_path, file_remote):

bufsize = 1024

fp = open(file_local_path, 'rb')

self.ftp.storbinary('STOR ' + file_remote, fp, bufsize)

return

2019-04-18 15:01:02,215 - upload/upload.py[line:57] - ERROR: Traceback (most recent call last):

File "upload/upload.py", line 50, in performing_tasks

ftp.upload(os.path.join(get_config.bill_file_out_path, file), get_config.ftp_upload_remote + file)

File "/data/bboss/bossscript/upload/ftp_file.py", line 51, in upload

self.ftp.storbinary('STOR /imcoming/SIM_CDR/SIM_20190418.1352',fp,bufsize)

File "/data/python27/lib/python2.7/ftplib.py", line 478, in storbinary

return self.voidresp()

File "/data/python27/lib/python2.7/ftplib.py", line 229, in voidresp

resp = self.getresp()

File "/data/python27/lib/python2.7/ftplib.py", line 224, in getresp

raise error_perm, resp

error_perm: 551 /imcoming/SIM_CDR/SIM_20190418.1352: Error on output file.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您想让ESP32与云服务器进行通信,您可以使用以下步骤: 1. 在您的云服务器上安装PHP。您可以使用以下命令在Ubuntu上安装PHP: ``` sudo apt-get update sudo apt-get install php ``` 2. 编写一个PHP脚本来处理ESP32发送的请求。您可以使用以下代码作为参考: ``` <?php // 获取ESP32发送的数据 $data = $_POST['data']; // 将数据写入文件 $file = fopen("data.txt", "w"); fwrite($file, $data); fclose($file); // 返回响应 echo "OK"; ?> ``` 3. 将PHP脚本上传到您的云服务器。您可以使用FTP工具(如FileZilla)将文件上传到服务器上。 4. 在ESP32上编写代码来向服务器发送请求。您可以使用以下代码作为参考: ``` #include <WiFi.h> #include <HTTPClient.h> const char* ssid = "your_SSID"; const char* password = "your_PASSWORD"; void setup() { // 连接到Wi-Fi网络 WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); } } void loop() { // 发送POST请求到服务器 HTTPClient http; http.begin("http://your_server_address/your_php_script.php"); http.addHeader("Content-Type", "application/x-www-form-urlencoded"); String data = "data=Hello world!"; int httpResponseCode = http.POST(data); if (httpResponseCode > 0) { String response = http.getString(); Serial.println(response); } else { Serial.println("Error: " + http.errorToString(httpResponseCode)); } http.end(); delay(5000); } ``` 在此代码中,您需要将`your_SSID`和`your_PASSWORD`替换为您的Wi-Fi网络的SSID和密码。您还需要将`your_server_address`替换为您的云服务器的地址,并将`your_php_script.php`替换为您的PHP脚本的名称。 5. 上传ESP32的代码并运行。您可以在串口监视器中查看服务器响应。 这是一个简单的例子,您可以根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值