問題タブ [basehttpserver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - BaseHTTPServer POST リクエスト - 接続のリセット
COMポートを介して外部レシーバーからGPS座標を取得し、Google Geolocation APIによって返されるようなJSON文字列に変換する単純なPythonツールを構築しています。目的は、Firefox の Google Geolocation プロバイダーの URL を、この文字列をブラウザーに返すローカルの URL に置き換えて、ブラウザーに GPS ベースの位置情報を実装することです。
GPS 部分は問題ありませんが、ブラウザにデータを送信する HTTP サーバーに問題があります。ブラウザが Google に位置情報をリクエストすると、次のような POST が送信されます。
これはそれに応答する私のコードです:
そのため、空の Curl から POST リクエストを送信すると正常に動作しますが、リクエストがブラウザから送信されたものである場合 (つまり、本文に「{}」が含まれている場合) は機能しません。
私は HTTP プロトコルや BaseHTTPServer についてまったく詳しくありません。なぜこれがうまくいかないのですか?どうすれば修正できますか。
javascript - Python API へのリクエストが、クロムによって理由もなく 10 秒間停止しました。[BaseHTTPServer + Chrome]
問題の概要
Python で記述された Web ページと API を実行しています。Web ページは POST 要求でデータを Python API に送信し、Python API はそれを処理して送り返します。API は、curl リクエストとコンソール AJAX リクエストで正常に動作します。ただし、新しいタブに Web ページを読み込むと、最初の 10 秒程度のすべての POST 要求は、失敗するまで「停止」します (Chrome によって実行されません)。約 10 秒後、POST リクエストは正常に機能し、Python API は壊れたパイプをキャッチします (ERRNO 32、以下のログ)。タブをハード更新すると、サイトはすぐに機能し、リクエストはまったく停止しませんが、サイトで新しいタブを開くと、この 10 秒の遅延が発生します。
仕様
これは Chrome でのみ発生し、Firefox と Safari では問題なく動作します。localhost と AWS インスタンスの両方で API と Web ページを実行しましたが、まだ 10 秒ほどの遅延があり、その後正常に動作します。他のコンピューターの chrome で発生し、他のコンピューターの Firefox で動作します。
私がそれを修正しようとした方法
Chrome は、プロキシ接続をネゴシエートするか、6 つの TCP 接続の制限に達すると、明らかにリクエストを停止します。ハード リセットを実行しても、API への接続を再ネゴシエートする必要がない理由、または毎回それを行う必要がない理由がわかりません。それをしている場合でも、一貫して約10秒かかるべきではありませんか?また、サイトが 6 つの TCP 接続に達していないことも確認しました。
潜在的な問題?
リクエストを別のサイトからのものに変更しても、HTTP リクエストが停止する問題はありません。この問題は Chrome に固有のものであるため、BaseHTTPRequests が処理方法を知らない方法で Chrome が XMLHTTPRequests を実装するかどうか疑問に思っています。 、そしてそれが壊れたパイプにつながっています。しかし、毎回約10秒後に常に修正される理由はわかりません。
私は今、これに何時間も費やしてきました。どんな助けでも大歓迎です!
HTML/JS:
パイソン API:
壊れたパイプのエラー メッセージ:
python-3.x - Python の http.server からファイルを提供する - ファイルでの正しい応答
http.server から PDF ファイルを提供しようとしているだけです。これが私のコードです:
今はどう対応したらいいのかわからfile.pdf
ず、どこにも行けません。ヘッダーが正しいと確信していますが、実際のファイルを送信することができません。
python - python3 HTTPServer/BaseHTTPRequestHandler 出力ストリームの問題
組み込みの python3 http.server モジュールで問題に直面しました。具体的には BaseHTTPRequestHandler クラスの wfile.write() メソッド。
文字列として事前定義された html フォームをクライアントに GET リクエストで送信しようとしています。クライアントへの出力ストリームは、バイトのようなオブジェクトとしてエンコードされ、クライアントに転送されます。
ただし、クライアント側では、サーバーの起動時に HTML 形式としてレンダリングされません。<pre>
最終的にタグにラップされ、書式設定済みのテキストとして表示されます。
コードは次のとおりです。
python-2.7 - Python で開発された Web サーバー、画像ファイルを転送する方法、および Web ブラウザーで表示できますか?
Python を使用して単純な http 要求を処理する単純な Web サーバーを開発したいと考えています。HTMLページの転送や他のファイルの転送など、リクエストに応答する方法を学びました。画像ファイルを転送すると、クライアントはブラウザを使用してファイルを取得します。URL は次のようになります。
「Content-Type = application/x-png」を設定しました。ただし、ブラウザはファイルを直接ダウンロードするため、ブラウザに表示できません。下の画像と違う
ブラウザで表示できます。ブラウザに画像を表示するには?誰かが私を助けることができますか?
そして、画像ファイルをhtmlページにエンコードして修正できることを知っています。以下のようなコード:
しかし、別の方法があるに違いないことはわかっています.URLのソースコード(https://www.baidu.com/)を参照してください。
私のページとは異なります: