1

次のコマンドでヘッダーを設定するperlスクリプトがあります

print "Content-Disposition: attachment; filename=test.csv\n\n";

このスクリプトは、Web サーバー IIS と Apache にデプロイされた場合、動作が異なります。

コードが Apache Web サーバーにデプロイされると、ファイル test.csv を Android モバイルにダウンロードできます。

しかし、同じスクリプトを IIS サーバーにデプロイすると、Android モバイルでは常にダウンロードに失敗します。

注: ただし、ダウンロードは、両方の Web サーバーのデスクトップ ブラウザーで魅力的に機能します。

以下は IIS からの応答ヘッダーです。

(Status-Line)   HTTP/1.1 200 OK
 Server Microsoft-IIS/6.0
 Content-Disposition    attachment; filename=test.csv
 X-Powered-By   ASP.NET
 Date   Thu, 31 Jan 2013 10:10:59 GMT
 Connection close

以下は、Apache からの応答ヘッダーです。

(Status-Line)   HTTP/1.1 200 OK
 Date   Thu, 31 Jan 2013 10:12:33 GMT
 Server Apache/2.2.22 (Win32)
 Content-Disposition    attachment; filename=test.csv
 Keep-Alive timeout=5, max=100
 Connection Keep-Alive
 Transfer-Encoding  chunked
 Content-Type   text/plain

この問題を解決するのを手伝ってくれる人はいますか?

ありがとう!

4

2 に答える 2

1

ご支援ありがとうございました。

perlコードをたどってみましたが、問題の解決に役立ちました

# Set the header using following way
print "Content-Type: text/plain", "\n";
print "Content-length: $length", "\n";
print "Content-Disposition: attachment; filename=test.csv\n\n";

注: $length は、以下に示すようにファイルのコンテンツの長さを格納する変数です

my $csv = "testing";
my $length = length $csv;

ありがとう!

于 2013-02-01T07:22:42.397 に答える
0

他の人も IIS サーバーから Android へのダウンロードに問題を抱えているようです:

http://code.google.com/p/android/issues/detail?id=33362

Android 2.3.x での .apk IIS Web サーバーのダウンロード エラー

http://www.experts-exchange.com/Programming/Languages/Java/Android/Q_27592118.html

Perl の問題ではないと思います。しかし、私は解決策を見ませんでした。

于 2013-01-31T15:00:59.997 に答える