JSONの解析エラー、予期しない文字
この記事は、自社サーバーにLiveAgentをインストールしている管理者の方に役立つ内容です。
以下のエラーが発生した場合:
Error parsing JSON: SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
これは、ブラウザのクライアントアプリケーションが、LiveAgent APIからのJSONレスポンスの代わりに、JSON形式ではないデータを受信していることを意味します。ほとんどの場合、/api/v3/contacts/ などのAPIへのリクエストが、誤った index.php ファイルによって処理されていることが原因です。
mod_rewrite が有効になっている場合、LiveAgentのリクエストはリクエストURLの処理を mod_rewrite に依存しており、/api/v3/contacts/ へのリクエストは、contacts をパラメーターとして /api/v3/index.php によって処理される必要があります。しかし、mod_rewrite の設定が正しくない場合、このリクエストがインストールのルートディレクトリにある index ファイルによって処理される可能性があります。そのファイルはパラメーターを認識できないため、カスタマーポータルのトップページのHTMLをレスポンスとして送信してしまいます。クライアントアプリケーションがこのHTMLを受信すると、有効なJSON形式ではないため、処理に失敗します。
/api/v3/index.php がリクエストを処理するよう mod_rewrite に指示するには、/api/v3/.htaccess を編集し、以下の行の後に:
RewriteEngine On
次の行を追加してください:
RewriteBase /api/v3/
これにより、/api/v3/.htaccess ファイル内のすべてのリダイレクトに /api/v3/ を先頭に付加するよう mod_rewrite に指示します。