2016-08-16 19 views
60

このAPIのAPI-EndpointとAuthtokenを持っています郵便配達員のAPIからExcel(.xls)ファイルをダウンロードするには?

上記のAPIは.XLSレポートのダウンロード用です。ダウンロードした.xlsファイルは(可能な場合)POSTMANを使って表示できますか?

私が探しているはずの他のプログラム的な方法は何ですか?

+0

「プログラムで」使用できるアプリケーションではありません。フル機能のGUIです。 「POSTMANを使用してダウンロードした.xlsファイルを表示する」とはどういう意味ですか? Postmanを使用してエンドポイントに電話をかけたいですか? – nbokmans

+4

@nbokmansバックエンドで提供された.xlsファイルをダウンロードしたい。 私はpostmanを使用すると.xlsファイルを正しく表示できず、すべてのユニコードと特殊文字が表示されない。私が必要とするのは、郵便配達員とは別の方法で、apiを発射し、.xlsファイルを自分のPCにダウンロードする場合です。 – prasshant

+0

それでも十分な情報はありません - エンドポイントはあなたにファイルをダウンロードするURLを提供しますか?実際にダウンロードを開始しますか?例えばエンドポイントにアクセスすると、json/xml /ファイルがどこにあるかを示すデータを取得するのですか、ダウンロードを直接開始するのですか? – nbokmans

答えて

132

リクエスト時に「送信」ではなく「送信」を選択してください。 (青ボタン)

https://www.getpostman.com/docs/responses

送信し、ダウンロードする 『あなたのハードディスクへの応答を保存できますどの「バイナリー応答タイプの場合、あなたが選択する必要があります』。あなたは、適切なビューアを使用して、それを表示することができます。 "

+0

これは間違いなく直感的ではありません - ポインタありがとう! **レスポンスを保存**しようとしましたが、役に立たなかった**サンプル**に保存されました。 – SliverNinja

4

エンドポイントは本当に.xlsファイルへの直接リンクである場合は、あなたがダウンロードを処理するために、次のコードを試すことができます。

public static boolean download(final File output, final String source) { 
    try { 
     if (!output.createNewFile()) { 
      throw new RuntimeException("Could not create new file!"); 
     } 
     URL url = new URL(source); 
     HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
     // Comment in the code in the following line in case the endpoint redirects instead of it being a direct link 
     // connection.setInstanceFollowRedirects(true); 
     connection.setRequestProperty("AUTH-KEY-PROPERTY-NAME", "yourAuthKey"); 
     final ReadableByteChannel rbc = Channels.newChannel(connection.getInputStream()); 
     final FileOutputStream fos = new FileOutputStream(output); 
     fos.getChannel().transferFrom(rbc, 0, 1 << 24); 
     fos.close(); 
     return true; 
    } catch (final Exception e) { 
     e.printStackTrace(); 
    } 
    return false; 
} 

あなた行う必要がための適切な名前を設定されている必要がありますすべての。認証トークンとそれを埋める

使用例:郵便配達で

download(new File("C:\\output.xls"), "http://www.website.com/endpoint"); 
+0

ありがとうございます – prasshant

+0

このコードは私の情報ですが、エンドポイントが直接リンクされていない場合は、上記のコードスニペットでどのような変更を行う必要がありますか? – prasshant

0

- あなたはヘッダ要素」を追加したことがありますAccept 'as application/vnd.ms-excel'

関連する問題