0

我已经使用 Superpowered 成功解码了一个本地文件

SuperpoweredDecoder *decoder = new SuperpoweredDecoder();
const char *openError = decoder->open("/Users/john/Desktop/myFile.mp3", false, 0, 0);

    if (openError) {
        NSLog(@"open error: %s", openError);
        delete decoder;
        return 0;
    };

现在我想对远程 URL 做同样的事情

例如。通过将解码器->打开呼叫替换为...

 const char *openError = decoder->open("https://example.com/api/mobile/courses/redirect/Z3VpZpZGVvcy9qbTMwYWJnLTAwMS5tcDM%3D?courseid=678");

(我在这里稍微更改了 URL,因为它不是我应该发布的 URL,但是,我通过将 URL 粘贴到 Chrome 地址栏中确认该 URL 是好的 - Chrome 播放 mp3)

结果: 打开错误:@

Superpowered 文档将路径描述为:完整文件系统路径或渐进式下载路径(http 或 https)。所以我认为这可能是可能的。

我是否需要设置customHTTPHeaders - 如果需要,有关如何使用此字段的任何指导?

4

1 回答 1

0

这是未记录的 beta 行为。@ 表示 open() 方法需要更多时间来打开文件(由于网络流量)。只需遍历 open() 直到您收到除“@”之外的其他内容。不要忘记在迭代之间 sleep() 以允许网络堆栈完成其工作。

于 2017-09-11T07:21:07.800 回答