アプリケーション開発ポータルサイト
ServerNote.NET
Amazon.co.jpでPC関連商品タイムセール開催中!
カテゴリー【IBM Watson
【IBM Watson】IBM Cloud APIのURL無効エラーENOTFOUNDの対処法
POSTED BY
2023-03-22

久々にIBM Watsonを触ろうとログインして、外からAPIを呼び出そうとしたところ、

Error: getaddrinfo ENOTFOUND gateway-tok.watsonplatform.net
    at RequestWrapper.formatError (/home/hogeuser/node_modules/ibm-cloud-sdk-core/lib/request-wrapper.js:208:21)
    at /home/hogeuser/node_modules/ibm-cloud-sdk-core/lib/request-wrapper.js:196:25
    at processTicksAndRejections (internal/process/task_queues.js:93:5) {
  message: 'getaddrinfo ENOTFOUND gateway-tok.watsonplatform.net',
  statusText: 'ENOTFOUND',
  body: 'Response not received - no connection was made to the service.'
}

なにやらURLが無効とのエラーが出て接続できなかった。

Node.jsのソースコードでは以下のようになっている。

onst AssistantV2 = require('ibm-watson/assistant/v2');
const { IamAuthenticator } = require('ibm-watson/auth');

const service = new AssistantV2({
  version: '2019-02-28',
  authenticator: new IamAuthenticator({
    apikey: 'xxxxx-yyyyy-zzzzz',
  }),
  url: 'https://gateway-tok.watsonplatform.net/assistant/api',
});

上記のurlが無効ということだろう。とりあえず、

https://cloud.ibm.com/resources

で、利用しているサービス、ここではWatson-Assistant-proを選択して、トップページを表示する。すると、トップにでかでかと、

The watsonplatform.net endpoint URLs are deprecated. Click "Service credentials" to create new credentials, and then update your API calls. See Update endpoint URLs from watsonplatform.net.

と、案内が出ているではないか。要は、資格情報を作り直せば良いのだ。

左タブの「サービス資格情報」を開き、新規資格情報をクリック。

資格情報の作成
名前:サービス資格情報-1
役割:管理者

のまま、「追加」とする。

一覧に追加されたら、ごみ箱アイコンの横にあるコピーアイコンで「クリップボードにコピー」する。

メモ帳などエディタを開いて、ペーストすると、以下のような資格情報JSONが見れる。

{
  "apikey": "xxxxx-yyyyy-zzzzz'",
  "iam_apikey_description": "....",
  "iam_apikey_name": "サービス資格情報-1",
  "iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Manager",
  "iam_serviceid_crn": "....",
  "url": "https://api.jp-tok.assistant.watson.cloud.ibm.com/instances/AAAA-BBBB-CCCC"
}

上記のurlが新しいAPI URLエンドポイント。Node.jsの該当ソースコード部分を上記に差し替えたら、正常に動作した。

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【WEBMASTER/管理人】
自営業プログラマーです。お仕事ください!
ご連絡は以下アドレスまでお願いします★

☆ServerNote.NETショッピング↓
ShoppingNote / Amazon.co.jp
☆お仲間ブログ↓
一人社長の不動産業務日誌
【キーワード検索】