如何从eBay API下载和解压缩文件
我正在获取数据,但它无法正确解压缩或正确编码。它应该是一个gzip的XML文件。实际上,文档并不清楚。我正在使用RESTSHARP进行HTTP调用(106.15.0)。
例外:
在解码
我的代码时发现了无效的数据:
const string url = "sell/feed/v1/task/task-16-SOMENUMBER/download_result_file";
var restClient = new RestClient(_restApiUrl)
{
Authenticator = new OAuth2AuthorizationRequestHeaderAuthenticator(authentication.AuthorizationToken, "Bearer")
};
var httpRequest = new RestRequest(url, Method.GET);
httpRequest.AddHeader("Accept-Encoding", "application/gzip");
httpRequest.AddHeader("Accept", "*/*");
byte[] myfile = restClient.DownloadData(httpRequest);
var decodedString = Encoding.UTF8.GetString(myfile);
using (var stream = new MemoryStream(myfile))
{
string res;
using (GZipStream zipStream = new GZipStream(stream, CompressionMode.Decompress))
{
using (var sr = new StreamReader(zipStream))
{
res = sr.ReadToEnd(); //ERROR HERE: Found invalid data while decoding
}
}
var result = res;
}
返回字符串的第一个30(encoding.default.getString(myfile)) pk \ u0003 \ u0004 \ u0014 \ 0 \ b \ b \ b \ b \ b \ b \ 0 \ f£†t \ t \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 0 \ 0 ActiveInVentoryReport
hex 50-4B-03-04-14-00-08-08-08-08-08-0C-A3-86-54-54-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00- 00-3E-00-00-00-41-63-74-69-76-65-49-6E-6E-65-65-65-6E-74-6F-72-72-79-79-79-52-65-65-70-6F-72-72-72-72-72-72-72-72- 74-2D-41-70-72-2D-30-36-2D-32-32-33-32-32-2D-32-32-32-32-32-32-34-34-3A-32-32-32-32-33-32-32-32D-30-37-37- 30-30-2d-31-33-33-34-39-39-39-38-35-35-32-34-2e-78-6d-6c-bd-9d-9d-5b-5b-53-53-53-9b-9b-47-b6-47-b6-86- AF-77-7E-45-CA-F7-32-7D-3E-3E-4C-79-3C-25-09-09-09-03-1E-C0-D6-48-38-38-38-38-38-60-DF-B1-8D-F6- 98-0A-01-17-86-4C-3C-BF-7E-F7-E1-
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论