我正在尝试转换位于远程服务器上的文件。 我将ConvertApi用于.NET。
我的代码:
string url = "http://test.com/myfile";
var convertApi = new ConvertApi("secret");
var response = await convertApi.ConvertAsync("web", "pdf", new ConvertApiParam("url", url));
此代码失败(ConvertApi返回HTTP 500内部服务器错误),因为远程服务器返回带有确切文件位置的HTTP 302重定向。 但是ConvertApi出于某种原因未遵循此重定向。
HTTP 302重定向是文件存储服务处理此类下载的一种非常常见的方式。
是错误吗?我想念什么吗?也许有一个特殊的设置可以强制ConvertApi遵循重定向?
答案 0 :(得分:1)
下面是转换远程文件的正确用法。您应该使用ConvertApiFileParam
类将文件作为包装在Uri
对象中的远程文件url传递。
var convertApi = new ConvertApi("secret");
var sourceFile = new Uri("https://github.com/Baltsoft/CDN/raw/master/cara/testfiles/presentation2.pptx");
var convertToPdf = convertApi.ConvertAsync("pptx", "pdf", new ConvertApiFileParam(sourceFile));