2008/08/20

[coldfusion][ぐるなび]地域情報を取得

ぐるなびWebサービスを利用して、エリア情報を取得したいと思います。

<cfparam name="requrl" default="http://api.gnavi.co.jp/ver1/AreaSearchAPI/?keyid=取得したAPIキー">
<!--- httpリクエスト --->
<cfhttp url="#requrl#"/>

<!--- xmlの解析 --->
<cfset ret = XmlParse(cfhttp.fileContent)>

<!--- 問合わせがエラーを返した場合 --->
<cfif XmlChildPos(ret,"gnavi",1) neq -1>

 <!--- コードの値を取得 --->
 <cfset retCode = ret.gnavi.error.code.xmlText>

 <!--- エラーコードの表示 --->
 <cfoutput>#retCode#</cfoutput>

<!--- 問合わせ結果が、正常な場合 --->
<cfelse>
 <cfset response = ret.response>
 <cfoutput>
  <cfloop index="i" from="1" to="#ArrayLen(response.XmlChildren)#">
   <cfset res_area = response.area[i]>
   <!--- エリアコード --->
   #res_area.area_code.XmlText#<br>
   <!--- エリア名称 --->
   #res_area.area_name.XmlText#
  </cfloop>
 </cfoutput>
</cfif>

上は、純粋に、表示しているだけですが、JSON形式に変換することにより、javascriptからの呼び出しにも対応できるようになります。

といっても、すでに、javascriptから、httpリクエストを出して、情報を取得することができるのでが、形式がxmlのため取得後が大変になるかなと。

0 コメント:

コメントを投稿