A simple HTTP Request & Response Service. Run locally: $ docker run -p 80:80 kennethreitz/httpbin
イントロダクションIntroduction Laravelはアプリケーションに対するHTTPリクエストを作成し、出力を検査するためのとても記述的なAPIを用意しています。例として、以下のテストをご覧ください。Laravel provides a very fluent API for making HTTP requests to your application and examining the output. For example, take a look at the test defined below: <?php namespace Tests\Feature; use Tests\TestCase; use Illuminate\Foundation\Testing\RefreshDatabase; use Illuminate\Foundation\Testing\Wi
Webプログラムの開発では、クライアンがどのようなパラメータを送信し、サーバーがどのようなレスポンスを返しているのか正確に理解している必要があります。 今回詳細する「httpbin」はこのようなHTTPリクエストとレスポンスの確認に便利なWebサービス&ソフトウェアです。Python製のオープンソースソフトウェアで、ローカルにインストールして使用することもできますが、基本的には以下の公式サイトを利用するのが簡単です。 http://httpbin.org https://httpbin.org http://eu.httpbin.org https://eu.httpbin.org https://hub.docker.com/r/kennethreitz/httpbin/ 上記URLに対してさまざまなパラメータを追加したHTTPリクエストを送信すると、クライアントのIPアドレスやユーザー
サイズの大きなファイルをアップロードしようとするとタイトルのエラーが出るので、その対処方法。 nginx.conf まずはnginx.confファイルに「client_max_body_size 20M;」を追加。 私はリバースプロキシを利用しているので、2箇所に記述。 server { listen 80; server_name blog.10rane.com; client_max_body_size 20M; # 413 Request Entity Too Large ..... server { listen 8080; server_name blog.10rane.com; client_max_body_size 20M; # 413 Request Entity Too Large ..... php.ini php.iniは3箇所の変更。 # emacs /etc/p
HTTP ガイド リソースと URI ウェブ上のリソースの識別 データ URL MIME タイプ入門 よくある MIME タイプ www 付きと www なしの URL の選択 HTTP ガイド HTTP の基本 HTTP の概要 HTTP の進化 HTTP メッセージ 典型的な HTTP セッション HTTP/1.x のコネクション管理 プロトコルのアップグレードの仕組み HTTP セキュリティ Content Security Policy (CSP) HTTP Strict Transport Security (HSTS) X-Content-Type-Options X-Frame-Options X-XSS-Protection Mozilla web security guidelines Mozilla Observatory HTTP アクセス制御 (CORS) HTTP
HTTPガイドHTTP の概要典型的な HTTP セッションHTTP メッセージMIME タイプ(IANA メディア種別)HTTP の圧縮HTTP キャッシュHTTP 認証HTTP Cookie の使用HTTP のリダイレクトHTTP 条件付きリクエストHTTP 範囲リクエストコンテンツネゴシエーションHTTP/1.x のコネクション管理HTTP の進化プロトコルのアップグレードの仕組みプロキシサーバーとトンネリングHTTP クライアントヒントHTTP セキュリティサイトの安全化HTTP ObservatoryPermissions Policy Experimental コンテンツセキュリティポリシー (CSP)オリジン間リソース共有 (CORS)Cross-Origin Resource Policy (CORP)ヘッダーリファレンスHTTP ヘッダーAcceptAccept-CHAc
先日、JavaのHttpURLConnectionを用いて通信処理の実装をしてました。 その中で、multipart/form-data形式で汎用的に送信できる部品を作っていたのですが、何故か何度通信してもmultipart/form-dataのリクエストとして認識されず、解決にかなりの時間を費やしてしまいました。 原因はとてもしょうもない内容で、こんな事でハマるやつが他にいるのか?という感じだったのですが、備忘録的な意味合いも兼ねて書いておきたいと思います。 ちなみに最初に書いてしまうと、原因はこいつでした。 multipart/form-dataのリクエストボディ 一般的なのはこんな感じです。 以下のような形式で組み立てた内容をBodyに乗せて通信します。 --[Boundary文字列] Content-Disposition: form-data; name="[フォーム名]" <<
Content-Lengthヘッダ行は、テキスト以外のコンテント、例えば圧縮ファイルなどにも有用であろう。以下に圧縮したデータをContent-Lengthヘッダ行つきで応答を返すサーブレットをお示しする。このサーブレットはクライアントがgzipで圧縮されたコンテントを受理できるかを調べ、もしgzip対応であればボディ部を圧縮してクライアントにわたす。その場合、HTTP/1.0クライアントも受理可能なようにContent-Lengthヘッダ行をつけ、また圧縮されていることをContent-Encodingヘッダ行でクライアントに通知する。圧縮の部分以外はAnotherHelloWorldの応用なので、詳細な説明は不要であろう。 読者はTelnetでどの程度の圧縮効果があるか調べると面白い。 package basic_servlets; /** * このサーブレットは圧縮したコンテントの応
このドキュメントの内容は、以下の通りです。 plain.txt request.php handler.php 実行例 HTTP Request Body を圧縮して、データ転送量を減らそうと思い、gzipでデータを圧縮してみました。 plain.txt 適当にテキストを入れたファイルを作成します。 request.php request.php は、 HTTP Request を送信するためのスクリプトです。 データを圧縮して、 handler.php に curl で投げます。 <?php // リクエストデータを読み込む $request_body = file_get_contents ('./plain.txt'); error_log (strlen ($request_body) ); // リクエストデータを gzip する $request_body = gzencode
HTTPガイドHTTP の概要典型的な HTTP セッションHTTP メッセージMIME タイプ(IANA メディア種別)HTTP の圧縮HTTP キャッシュHTTP 認証HTTP Cookie の使用HTTP のリダイレクトHTTP 条件付きリクエストHTTP 範囲リクエストコンテンツネゴシエーションHTTP/1.x のコネクション管理HTTP の進化プロトコルのアップグレードの仕組みプロキシサーバーとトンネリングHTTP クライアントヒントHTTP セキュリティサイトの安全化HTTP ObservatoryPermissions Policy Experimental コンテンツセキュリティポリシー (CSP)オリジン間リソース共有 (CORS)Cross-Origin Resource Policy (CORP)ヘッダーリファレンスHTTP ヘッダーAcceptAccept-CHAc
use GuzzleHttp\Client; $client = new Client(); $res = $client->requestAsync($method,$url,$options)->wait(); 様々な記法が存在しているが概ね以下の様な形でまとまる。 request()による呼び出しは 内部で requestAsync()->wait() を呼び出す。 get post と言ったメソド名呼び出しは、動的にメソド名を第一引数に据えてrequest を呼び出す。 getAsync postAsync と言ったメソド名呼び出しは、動的にメソド名を第一引数に据えてrequest Asyncを呼び出す。 PSR7 によるリクエスト PSR7形式でのリクエストオブジェクトが存在する場合には sendメソドが利用できる。 use GuzzleHttp\Psr7\Request; $r
Oct 29, 2016 · server php PHPのHTTPクライアント(Guzzle)で非同期の並列リクエストを行う方法 Guzzleは内部ではcurlを使っており、便利なcurlを面倒な設定をせずに使えるというありがたいもの (なおcurlがなくても動くがその場合は非同期が使えないなど機能が制限されるらしい) 事前準備 動作環境は以下のとおり PHP 5.5.0以上 curl 7.19.4以上 (要openSSL/zlib) インストール composerでguzzlehttp/guzzleを入れる (guzzle/guzzleは古いバージョンなので注意) composerを使っているので、使う時は require 'vendor/autoload.php'; を忘れないこと php.iniの設定 allow_url_fopen = ON を設定しておく 使い方 複数のURLに
guzzleのasyncによる非同期リクエストは並列処理になって処理順がバラバラになります。なってほしいです。 しかしどうも書いていると直列っぽく動作しているので、サンプルで確認。並列になっています。 <?php require 'vendor/autoload.php'; $client = new \GuzzleHttp\Client; $promises = []; for ($i = 0; $i < 5; $i++) { $promises[] = $client->requestAsync( 'GET', 'https://google.co.jp/', [ 'on_stats' => function ($stats) { echo $stats->getTransferTime() . "\n"; } ] )->then( function ($res) use($i) {
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く