vb.net - QBO Dataservice 图片上传
问题描述
我想将图像附件上传到 Quickbooks Online 并使用我的 Windows 窗体应用程序将其附加到项目。我正在使用 DataService 类,我的连接工作正常。我创建了 Attachable 对象并将图像数据加载到 MemoryStream 中。当我运行该DataService.Upload()
方法时出现问题,新附件是在 QBO 中创建的,就像预期的那样,但是没有图像并且大小为 0:
我安装了Fiddler来获取请求,如下:
--51678f9d-94b1-4bbc-83fb-7620b6c9c363
Content-Disposition: form-data; name="file_metadata_0"
Content-Type: application/xml
<?xml version="1.0"?>
<Attachable xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schema.intuit.com/finance/v3">
<AttachableRef>
<EntityRef type="Item">29</EntityRef>
</AttachableRef>
<FileName>Image.jpg</FileName>
<ContentType>image/jpeg</ContentType>
</Attachable>
--51678f9d-94b1-4bbc-83fb-7620b6c9c363
Content-Disposition: form-data; name="file_content_0"; filename="Image.jpg"
Content-Type: image/jpeg
Content-Transfer-Encoding: binary
--51678f9d-94b1-4bbc-83fb-7620b6c9c363
在底部,Content-Transfer-Encoding
设置为二进制,没有编码数据。有人对此有解释吗?
如果我使用Convert.ToBase64String(ms.ToArray)
并将结果字符串复制到 Postman 并Content-Transfer-Encoding
设置为“base64”,那么一切都会像预期的那样工作。
解决方案
推荐阅读
- c++ - VS Intellisense 在编辑头文件时如何从 stdafx.h 中查找定义?
- python - 比较列表并返回新列表
- ios - 减少紧凑地图时间 Swift
- indexing - 有没有办法检查谷歌数据存储中未使用的索引?
- arrays - Symfony 4 - Doctrine DQL 选择集合对象不起作用
- angular - 如何使用输入对 Angular 指令进行单元测试?
- datatables - 带有xpages的数据表插件,将json放在viewscope或sessionscope中而不是URL?
- ios - iOS 13 模态展示 + 导航控制器非常有问题
- php - Laravel 一对多保存问题
- c# - 当前上下文asp.net c#中不存在控件