2

SoundCloud API を使用して、ストリーミング可能なトラックのストリーム URL を取得します。リダイレクトに従うと、次のような URL になります。

http://ec-media.soundcloud.com/eodihgiuh.128.mp3?<a string>
    AWSAccessKeyId=<access key>
    &Expires=<timestamp>
    &Signature=<signature>

また

http://ak-media.soundcloud.com/euieuieie.128.mp3?
    AWSAccessKeyId=<access key>
    &Expires=<timestamp>
    &Signature=<signature>
    &__gda__=<a string>

次に、この URL で MP3 データのストリーミングを開始します。

最初にHEAD、ヘッダーを読み取るリクエストを送信します。これにより、曲全体を再生するために送信する必要があるリクエストContent-Lengthの数がわかります。GET

次にGET、それぞれが異なるRangeヘッダーを持ついくつかの部分的なリクエストを送信します。

問題は、まったく同じ URL へのリクエストがステータス コードでHEAD返される場合でも、リクエストがステータス コードを返す場合があることです。これは、ホストが.403GET200ak-media.soundcloud.com

これは起こるはずですか?HEAD私は、リクエストがリクエストとまったく同じヘッダーを返すことを期待していましたGETが、本文のレスポンスはありませんでした。

乾杯、

PB

PS: 私のコードはコンピューターではなく、リソースが非常に限られている小さな 8 ビット プロセッサを搭載したオーディオ デバイスで実行されていることを言及しておく必要あります。

4

1 に答える 1

0

残念ながら、現在のところ、GET リクエストに対して適切な応答が保証されているだけです。

rangeハックとして、非常に短いsでリクエストを実行しようとすることができます。

于 2012-12-10T17:37:25.460 に答える