メイン コーダーズルーム【スクリプト系】 ActionScript 3.0で Google contacts API を利用 (400 Bad Request) | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
せいぞう | Åê¹ÆNo.46025 投稿日時: 2010-10-7 14:10 |
常連 居住地: 江戸川区の某所 投稿: 125
使用環境:
Flash CS5.5 Windows8 (64Bit) Pentium Core i7 Memory 8GB |
ActionScript 3.0で Google contacts API を利用 (400 Bad Request) ActionScript 3.0を使って、Google contacts API を利用するソフトを作成しております。
下記の Googleサイトを参考に作っているのですが、新既コンタクトを作成(Creating contacts)する POST送信において どうしても 「HTTP/1.1 400 Bad Request」が返ってきてしまいます。 http://code.google.com/intl/ja/apis/contacts/docs/3.0/developers_guide_protocol.html Googleのサイトにも Folumがあり、ここにも多量の「Bad Request」についての書き込みがあります。 これら情報を漁り try & Error を繰り返してきましたが、解決に至っておりません。 勿論投稿もしましたが、私の下手な英語のせいか未だにレスポンスが頂けず、こちらのサイトに質問を 投げさせて頂きました。 (恥ずかしい英語ですが、こちらです↓) http://www.google.com/support/forum/p/apps-apis/thread?tid=734eea30ae495064&hl=en 前置きが長くなりましたら、以下、現在試みているコードを添付します。 どうか、よろしくお願いします。m(_ _)m //順序が逆ですが、最初に エラーのレスポンスを貼ります。
//以下が、現在試みているActionScript 3.0 コードです。
|
せいぞう | Åê¹ÆNo.46029 投稿日時: 2010-10-8 8:16 |
常連 居住地: 江戸川区の某所 投稿: 125
使用環境:
Flash CS5.5 Windows8 (64Bit) Pentium Core i7 Memory 8GB |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) 投稿者のseizoです。
ひとつ重要な情報が欠落していました。 エラーのHTTPレスポンスは掲載したけれど、どんな HTTPリクエストを送ったのか? という情報です。 以下に HTTPリクエストを記載しておきます。 ちょっと 厄介な投稿かもしれませんが、どうかよろしくお願いします。m(_ _)m
|
961832p | Åê¹ÆNo.46036 投稿日時: 2010-10-8 14:10 |
常連 居住地: Akiruno-shi 投稿: 155
使用環境:
:AS3: - Adobe Flex SDK, Eclipse, AIR GEAR - LB.Log AS3, Alcon2 :AS2: - AMES(ASDT, MTASC, Eclipse, swfmill) - Natural Entry Point Method - LB.Log, Zeroi Pro, Firefox, Chromium(Iron), IE ---------------- Pro, |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) 以前、自分が参加したスレッドと同じような処理の流れだったので、何かヒントとなるものがあるかもしれません。 ・【Youtube Data API】Youtube動画を「お気に入り」に追加したい。(FLASH-JP.COM - フォーラム) URLLoaderのかわりにSocketURLLoaderを使っている事と、リクエストデータにURLVariablesを使ってないことが大まかな違いでしょうか。 スクリプトやHTTPステータスの部分は [code][/code] を使って見やすくすることで、他のかたにも見てもらいやすくなると思います。
|
せいぞう | Åê¹ÆNo.46037 投稿日時: 2010-10-8 14:30 |
常連 居住地: 江戸川区の某所 投稿: 125
使用環境:
Flash CS5.5 Windows8 (64Bit) Pentium Core i7 Memory 8GB |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) 961832p さん、ご助言ありがとうございます。
早速読ませて頂きます。 何かわかりましたら、ここに投稿致します。 先ずはお礼まで。 PS:[code][/code]のご助言もありがとうございます。 先ほど修正致しました。m(_ _)m
|
せいぞう | Åê¹ÆNo.46038 投稿日時: 2010-10-8 17:04 |
常連 居住地: 江戸川区の某所 投稿: 125
使用環境:
Flash CS5.5 Windows8 (64Bit) Pentium Core i7 Memory 8GB |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) 961832p さん、先ほどはありがとうございました。
早速試してみました。 Event.COMPLETE で設定したハンドラで、なにやらデーターを受け取っていることがわかりました。 一歩前進しました。 ただ、このレスポンスが「Content is not allowed in prolog.」というCautionであったのが残念なところです。 もうひとつだけ、質問を投稿させて頂いてよろしいでしょうか。 Web検索で、いろいろ調べたところ、「Content is not allowed in prolog.」というコメントは BOM付きのUTF-8のデータ送信で発生することがあるらしいのですが、私の場合は上記スクリプトの通り AtomフィードをActionScriptで生成しているので、これには当てはまらないかと思っています。 もう何でもやっちゃえ と言うことで、ActionScriptで生成した Atomフィードを・・・ encodeURI や encodeURIComponent でエンコードしてみましたが、結果は同じ「Content is not allowed in prolog.」でした。 たいへん恐縮ですが、何か知恵をご教授頂ければ幸いです。 よろしくお願いします。 (メモ) Google Codeに掲載されているこの SocketURLLoader ↓ は中身がちがいますね?。 http://code.google.com/p/as3httpclient/downloads/list こちらから、一個ずつダウンロードしました。(^^;) http://as3httpclient.googlecode.com/svn/trunk/ では
|
961832p | Åê¹ÆNo.46039 投稿日時: 2010-10-8 18:34 |
常連 居住地: Akiruno-shi 投稿: 155
使用環境:
:AS3: - Adobe Flex SDK, Eclipse, AIR GEAR - LB.Log AS3, Alcon2 :AS2: - AMES(ASDT, MTASC, Eclipse, swfmill) - Natural Entry Point Method - LB.Log, Zeroi Pro, Firefox, Chromium(Iron), IE ---------------- Pro, |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) seizo さん、返信ありがとうございます。 なるほど、送る内容のどこかに原因が潜んでいそうですね。 なので投稿されてありますスクリプトの、XMLデータ生成しているところをよく見てみると、 なぜかXML宣言(<?xml?)の部分だけ空白文字が「+(プラス)」になっていました。 この部分、実際のスクリプトでは空白文字になっていますでしょうか?
|
せいぞう | Åê¹ÆNo.46040 投稿日時: 2010-10-8 19:17 |
常連 居住地: 江戸川区の某所 投稿: 125
使用環境:
Flash CS5.5 Windows8 (64Bit) Pentium Core i7 Memory 8GB |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) 961832p さん、
再びご助言ありがとうございます。 空白文字が「+(プラス)」・・・・そのとおりです。 お恥ずかしいと共に、「これで行くかも!?」と色めいたのですが、残念ながら結果は同じ「Content is not allowed in prolog.」でした。 ケアレスミスを2度もしてはいけないので、今回は URLVariables にセットする直前でXML内容を出力させ、確認しました。 また、今回は下記2パターンも試しましたが、これも同じ結果でした。 試み(1):HTTPのBodyが body=AtomFeed となる場合
試み(2):HTTPのBodyが AtomFeed だけになる場合
(余談) HTTP交信のモニタには、fiddlerを使っているのですが、SocketURLLoader での交信内容はモニタされないんですね。 不便だぁ(--;)
|
961832p | Åê¹ÆNo.46047 投稿日時: 2010-10-9 10:52 |
常連 居住地: Akiruno-shi 投稿: 155
使用環境:
:AS3: - Adobe Flex SDK, Eclipse, AIR GEAR - LB.Log AS3, Alcon2 :AS2: - AMES(ASDT, MTASC, Eclipse, swfmill) - Natural Entry Point Method - LB.Log, Zeroi Pro, Firefox, Chromium(Iron), IE ---------------- Pro, |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) seizo さん、確認ありがとうございます。 モヤモヤするので、自分も実際に試してみることに(スクリーンショット)。 前出の Youtube Data API の時に作ったスクリプトを少し変更してAIRで実行してみたのですが、エラーが再現されずに成功してしまいます(汗)。 投稿されてありますスクリプトと見比べてみても処理自体はそう大差ないような感じがするので、そうなると本当に文字コードが影響しているのでしょうか…謎です。 ひとまず今回使用したソースファイルをアップロードしましたので、文字コードなどに相違があるのか比べてみるのも手がかりを掴むのに役立つかもしれません(ソースファイルはBOM無UTF-8です)。 ・ソースファイル ※ZIP形式です ちなみに成功するとGoogleアカウントにある連絡先の項目へ、送信した情報が追加されていました。
|
せいぞう | Åê¹ÆNo.46048 投稿日時: 2010-10-9 12:01 |
常連 居住地: 江戸川区の某所 投稿: 125
使用環境:
Flash CS5.5 Windows8 (64Bit) Pentium Core i7 Memory 8GB |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) 961832p さん、何から何までほんとうに恐れ入ります。m(_ _)m
早速ダウンロードし試させて頂きます。 先ずは、お礼まで。 m(_ _)m
|
せいぞう | Åê¹ÆNo.46050 投稿日時: 2010-10-9 15:16 |
常連 居住地: 江戸川区の某所 投稿: 125
使用環境:
Flash CS5.5 Windows8 (64Bit) Pentium Core i7 Memory 8GB |
Re: ActionScript 3.0で Google contacts API を利用 (400 Bad Request) 961832p さん、たいへんお世話になりました。
お陰様で、Google Contacts API と会話が出来るようになりました。m(_ _)m 今回教わったポイント(私が間違っていたポイント)は、URLRequest へのデータセット方法でした。 簡単に書くと、下のようにようになります。 (誤)URLRequest ← URLVariables ← AtomFeed (正)URLRequest ← AtomFeed つまり、URLVariablesを使わない方が正しいということです。 スクリプトは以下の通りです。
もうひとつ発見したことがあります。 SocketURLLoader を使わずに、URLLoader でも正常に動作しました。
尚、私のテスト環境は、FlashCS5 です。 961832p さんから頂いたコードを参考に、Flashに組み込んで動かしました。 以上、文章ではなかなか伝わらないかと思いますが、多大な感謝の気持ちをここに表します。 ありがとうございました。m(_ _)m
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |