0

我正在尝试连接到打印机服务器,以便能够将打印文件直接保存在打印机存储中。我可以使用 curl 来做到这一点 curl -v -H 'Content-Type:application/octet-stream' 'http://192.168.1.125/upload?X-Filename=model.gcode' --data-binary @model.gcode 现在我正在尝试将此功能添加到 Flutter 应用程序但不起作用....所以现在我正在尝试使用邮递员服务器调试代码。你能帮我创建一个邮递员服务器模拟以将文件作为二进制文件上传,就像在这个 curl 代码中一样?

curl -v -H 'Content-Type:application/octet-stream' 'http://192.168.1.125/upload?X-Filename=model.gcode' --data-binary @model.gcode

我想创建它,因为我想测试这个 Flutter 代码女巫在打印机的服务器中不起作用。

颤振代码:

  Future<void> uploadFile(File file) async {
///Using HTTP Package
 Map<String, String> headers = {
  "Content-type": "application/octet-stream",
};
var stream = new http.ByteStream(DelegatingStream.typed(file.openRead()));
var length = await file.length();
var uri = Uri.parse("http://192.168.1.125/upload?X-Filename=nupo.gcode");

var request = new http.MultipartRequest("POST", uri);
var multipartFile = new http.MultipartFile('application', stream, length,
    filename: file.path);
request.headers.addAll(headers);
request.files.add(multipartFile);
var response = await request.send();
print(response.statusCode);
response.stream.transform(utf8.decoder).listen((value) {
  print(value);
});
}

服务器应该能够接收二进制文件,命令应该是upload?X-Filename=filename.gcode,X-Filename 是给出名称的命令。

(此文件是 3D 打印文件,因此 .gcode 是电机命令的意图)

4

1 回答 1

0

Postman 不是可用于此范围的服务器。您只能将其用于测试现有服务器。postman 或 visiti 的最佳实践 [邮差支持][1]

于 2020-11-04T12:14:23.620 回答