Baidu の地図 API ソリューションの不正使用

今日は MVC を使用してプロジェクトを作成し、Baidu Maps を使用する必要がありました。インポート時にいくつかの問題が発生しました。長い間デバッグした後、多くの人の記事を読み、ようやく正しく理解できました。本当に言葉が出ません。時間がかかりました。小さな機能なので長いです 記録 エラーログをダウンロードします。


マップ コードをインポートした後 (Baidu マップ ジェネレーターがあります。必要な場合は、「マップの作成 - Baidu マップ ジェネレーター」に移動できます)、実行するには空白なので、次のようになります。

非常に不可解ですが、ページのソースコードを確認したところ、BMap クラスが定義されていないことがわかりました。

そんなはずはないと思い、インターネットでいくつかの方法を調べましたが役に立ちませんでした。そこで、この方法が見つからなかったので、Baidu API にインポートされた js ファイルのパスに問題があるのではないかと考えたところ、案の定、次のように書きました。

    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=XavSGctuVGOQpe3Hn5pIh0TqMF47u1Nf"></script>

src パスの URL は http プロトコルであることに注意してください。ただし、私のプロジェクトは https で実行されており、http は https では使用できません。具体的な理由は、この人のブログに記載されています。これは非常に明確です。http リソースを https に導入する_weixin_30883777 のブログによって引き起こされる問題 - CSDN ブログ

次に http に s を追加すると、正常に実行できると思いましたが、次のダイアログ ボックスが表示されました。

 「地図APIの使用が許可されていません」と表示され、再度申請しましたが結果は同じで、当時はやる気を失って拷問されたようで途方に暮れていました。インターネットで検索したところ、ホワイトリストを「*」に設定するという記事を見つけたので試してみたところ、うまくいきました。もちろん、これは私自身のプロジェクトであり、アクセス範囲は比較的広いため、実際の Web サイトのプロジェクトの場合は、私の会社のドメイン名を指定した方が安全ではありません。

 


上記は私が遭遇した問題です。私と同じような人がいるかどうかはわかりませんが、私が見つけた効果的かもしれない方法の例をいくつか紹介します。この問題に遭遇した場合は、一つずつ試してみてください。解決策は常にあります。

  1.  お申込みの際、カテゴリは「ブラウザ側」を選択し、その他のタイプはサポートしておりません。同時に、サービス起動時にすべてのサービスを選択する必要があります。JavaScript APIのチェックを外した場合、エラーが報告されます。
  2. ホワイトリストを「*」に設定
  3. <script type="text/javascript" src="http://api.map.baidu.com/api?v= 2.0 &ak=XavSGctuVGOQpe3Hn5pIh0TqMF47u1Nf"></script>のバージョンの問題である可能性があります      。対応するバージョンに調整してください。申請時のバージョン
  4. Baidu Maps のデモを見てください。パスにhttp:がありません。転送するときに追加する必要があります。

以上です。ご質問がございましたら、プライベート メッセージを送信するか、メッセージを残してください。

 

 

おすすめ

転載: blog.csdn.net/qq_56966336/article/details/123487445