現在、GoogleスプレッドシートをExcel形式で取得し、xlsファイルをファイルシステムに保存するアプリケーションがあります。 riaforgeのColdFusion google APIラッパー(http://cfgoogle.riaforge.org/)を使用しています。cfhttpを使用して公開スプレッドシートを取得する
ラッパーは、Googleアカウントで認証してから、cfhttpを使用してバイナリ形式でファイルをダウンロードしています。ドキュメントを取得するためのURLは次のようになります。 https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=#urlEncodedFormat(arguments.id)#&fmcmd=#spreadSheetFormat(arguments.format)#
公開アプリケーションのドキュメントURLを直接ダウンロードするようにアプリの動作を変更したいのですが、私が公開ドキュメントのURLを使用すると、xlsファイルが表示されますブラウザが最低限の要件を満たしていないため、私はWebベースのビューを提供しています。 Googleドキュメントのapiラッパーが使用するのと同じURL形式を使用すると、パブリックドキュメントのIDを渡しても認証する必要があります。
私はGoogleのapiドキュメントを検索しましたが、cfhttpを使用してバイナリ形式でスプレッドシートを直接ダウンロードできるように、公開ドキュメントをリクエストするための適切なURLフォーマットを見つけることができませんでしたか? cffhttpを使用して認証せずにxls形式の公開スプレッドシートをダウンロードするために必要な形式は何ですか?
私はこれを試してみましたが、私が最終的に得たスプレッドシートは、私に認証を求めるWeb応答だと仮定していますが、実際のブラウザにURLを渡すと公開スプレッドシートが表示されますgoogleに認証されています。ブラウザでurlを実行しているときとcfhttpで実行しているときとで動作が異なる理由が分かりません。 –
おそらくそれ以上のことがあります。私はFirebugを使って、FF(リクエストが成功した)からGoogleに送信された生の要求を調べ、他の変数やヘッダーやCookieが含まれているかどうかを確認します。試行錯誤している可能性があります:) –
認証せずにスプレッドシートをダウンロードすることはできないようですか?それは真の質問かもしれません、誰もが、認証なしで公開のGoogleスプレッドシートをダウンロードするために必要なURL形式を知っていますか? –