5

私はこのガイドに従っています:

http://lua-programming.blogspot.co.uk/

私は自分の API を作成する必要がある部分にいます。以前に kong を使用したことがあり、API を作成するためのスクリプトを作成しました。問題は、API を作成できないことです。私のスクリプトは文字通り、プラグインを持たないベアボーン API です (最初に API を作成したい):

curl -X POST --url http://localhost:8001/apis/ --data 'name=mock' --data 'upstream_url=https://mockbin.com' --data 'request_host=mockbin.com';

このコマンドを実行するたびにcurl: (52) Empty reply from serverエラーが発生しますが、実行するcurl -X GET --url http://localhost:8001/apisと、現在所有している API の数 (0) が表示されるので、サーバーに問題はありません。

カサンドラとコングをローカルにインストールしました。何か案は?

4

2 に答える 2

6

エラー 52 が返された場合、文字通り「サーバーからの返信がありません」という意味です。クライアント (curl など) が HTTP をサーバーに送信する場合、そのサーバーは正当な HTTP であるために何かを送り返す必要があります。プロトコルに関しては、準拠して何も応答しない方法はありません。

エラー 52 は、サーバーがまさにそれを行ったことを意味します。1バイトのデータで応答しませんでした(そして接続を閉じました)。正常な状態のサーバーはこれを行うべきではありません。

サーバーが気に入らないものを送信したときに、サーバーによってこのアクションをトリガーできる場合がありますが、それでもサーバーの問題です。そのような場合、サーバー エラーの原因となるものを送信しないことでこのエラーを回避できる場合がありますが、それを把握するのは難しいか、非常に難しい場合さえあります。

この問題の最も一般的な原因は、指定されたホストまたはポート番号でリッスンしている HTTP サーバーが実際に存在しない場合です。

于 2016-12-22T21:34:07.770 に答える