郵便番号検索でブロックエラー発生

javasriptコードで、下記のURLへアクセスして郵便番号から住所を検索しようとしたところ、

アクセスブロックと取れるエラーメッセージが表示され、住所検索できません。

原因または、不備点などご教示お願い申し上げます。

 

●URL:‘https://zipcloud.ibsnet.co.jp/api/search?zipcode=559-0012

●コンソールログに表示されたエラーメッセージ

Access to XMLHttpRequest at ‘https://zipcloud.ibsnet.co.jp/api/search?zipcode=559-0012’ from origin ‘https://(domain).cybozu.com’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

 

●記述したコード

var url = ‘https://zipcloud.ibsnet.co.jp/api/search?zipcode=’ + zipCode;
console.log(“郵便番号検索URL:” + url);

// jQuery ajaxで同期処理
$.ajax({
url: url,
dataType: ‘json’,
async: false,
success: function(response) {
if (response.status == 200) { //200 -> 取得成功
kenmei = response.results[0].address1; // 都道府県
kenName = kenmei.substr(0, 2); // 県名の頭2桁取得
}
},error: function(response) {
var msg = “Status Code:” + response.status + " (" + response.message + “)”;
console.log(“郵便番号からの住所検索に失敗しました。” + “” + msg);
}

});

zipcloud, つかったことはないですがCORSではじかれてるみたいですね。

zipcloud側がJSONPに対応しているようですので、

下記のようにしてJSONPでいけるかとおもいます。

 

dataType: ‘json’,

dataType: ‘jsonp’,

 

参考

https://noumenon-th.net/programming/2016/03/24/jsonp_jquery/

村濱一樹 様

ご教示ありがとうございます。

jsonpに変更して確認してみます。

また、何かありましたら、宜しくお願い申し上げます。

村濱一樹 様

dataType: ‘jsonp’ に変更し、実行したところ、問題なく住所を取得することができました。

ご教示いただき、ありがとうございました。

 

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。