2012-05-12 10 views
1

私はRapidshare Uploadスクリプトを自分のプロジェクトに実装しようとしていますが、古くなったようです。私はいつも、ターミナルで次のエラーが表示されます。ここ Rapidshare API - Perl Script

File /home/googles/Downloads/weave_minimal.tgz has 10953 bytes. Calculating MD5HEX... 
MD5HEX is 12c7dfef24eb0bb249a1f4723cd8daf6 (10953 bytes analyzed) 
Trying to upload to your prem account. 
Getting upload server infos. 
Uploadserver invalid? Internal error! 

はスクリプトです:私は任意の助け嬉しい http://pastebin.com/wSPWa84B

+0

発生しているエラーを再現できるように、できるだけ小さなコードを用意する必要があります。 – jordanm

答えて

0

:)それはすぐに作業を取得するようになった私は2つを見つけました問題:1. URLはhttp://rapidshare.com/cgi-bin/rsapi.cgi?sub=nextuploadserverでなければならず、HTTPサーバーに接続するにはHTTP/1.1を使用する必要があります。ですから、RSへの接続に使用するすべての行は次のようになります。

print $socket qq|GET /cgi-bin/rsapi.cgi?sub=nextuploadserver HTTP/1.1\r\nHost: rapidshare.com\r\n\r\n| 

HTTP/1.1の詳細についてはrfc2616

を参照してください、私はこのことができます願っています!

+0

助けてくれてありがとう、本当に感謝していますが、別のエラーが発生しました。私は処理できません。/ /もう助けてくれるかもしれません) – Googles

+0

ファイル/home/googles/Documents/Shared/RapidUpload-1.0/Rapidupload has 1253バイト。 MD5HEXを計算中... MD5HEXは1b8485f0105d07234517d28675ea38d0(1253バイト分析) あなたのアカウントにアップロードしようとしています。 アップロードサーバーの情報を取得する。 rs384l3.rapidshare.comへのアップロード アップロードチャンクは、0から始まる1253バイトです。 1253バイトを送信しています。 サーバーの応答: エラー:ブラウザがHTTP 'Host'ヘッダーフィールドを送信していません。別のブラウザを使用してください。 サーバーの結果にファイルIDが含まれていませんでした。 – Googles

+0

あなたがRSに接続するのに使うすべての行は、この 'print $ socket qq | GET UriToRsSite HTTP/1.1 \ r \ nHost:rapidshare.com \ r \ n \ r \ n |'のようになります。 UriToRsSiteは、あなたのスクリプトのどこかで(/cgi-bin/rsapi.cgi?sub=nextuploadserverのように)作成しようとしているrsapi-callです。私はそれがすべきだと思います。 ---編集:問題は、RSサーバーがHTTP/1.1を使用することを要求し、HTTP/1.1要求にはホストヘッダーフィールドを含める必要があるということです。 – Weeman