並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 1256件

新着順 人気順

HTTPの検索結果121 - 160 件 / 1256件

  • 史上最強のデータベース、SurrealDB - Qiita

    SurrealDBというRust製データベースを知ったので紹介します。このデータベースはすごいです。リレーショナル、ドキュメント、グラフ、あらゆる種類のデータ構造を扱うことができ、かつインメモリ、単一ノード、分散環境、全てで動かすことができます。さらにHTTPやWebSocketによるアクセスと柔軟なユーザ認証、認可機能とがDB本体に内包されており、ブラウザから直に接続するWebDBとしても使えます。とにかくなんでもできる夢のデータベースといった感じです。 特徴 機能を挙げていたら多くなりすぎたので、特に面白い部分を挙げます。 配列やオブジェクトをネストした複雑なデータ構造を持てるのに、レコードリンクという機能によりリレーションに対応していてしかもSQLやMongoDBより簡潔にクエリが書ける。 スキーマレスで各レコードには任意のフィールドを持てるが、必要ならスキーマを定義することもできる

      史上最強のデータベース、SurrealDB - Qiita
    • パケットキャプチャで理解する TLS1.3

      TLS は Transport Layer Security の略で、盗聴、あるいは通信相手のなりすましの可能性がある通信路において、安全に通信を行うための暗号通信プロトコルです。 本書では、Go 言語を使って TLS サーバ・クライアントを用意し、その通信を Wireshark で観察しながら、TLS のプロトコルについて説明します。 本書を読むことで、TLS の通信で実際にどのようなパケットが送受信されているかが確認でき、TLS の学習の助けになると思います。 また、TLS には複数のバージョンがありますが、本記事では、最も広く使われており、かつ最新である TLS1.3 に焦点を当てます。

        パケットキャプチャで理解する TLS1.3
      • 「Qiitaのユーザー名に3桁数字を使うときの注意」とその後 - Qiita

        (追記)Qiita側での修正リリース完了 こんにちは。元 @500 です。 Qiitaのご担当者様から、当該ユーザー名を取得出来ないようにする修正リリースを11月19日に行ったと連絡を頂きました。 同時に、ユーザー名の変更依頼を受けましたので、 別のユーザー名に変更し今に至ります。 この記事をご覧になった方からいろいろな意見が来ていましたので、11月12日時点の記事内容に加筆をして以下に残します。 その出会いは偶然に…… なぜか空いていた「短いユーザー名」 これまで備忘録はiCloudのメモに書いて同期していたのですが、今さらQiitaに記事を書こうと先ほどアカウントを作成しました。 私は特に共通のハンドルネームみたいなのもなく、各種サービス登録時には超適当にユーザーIDやユーザー名を決めるタイプです。 Qiitaでは3文字以上とあったので、適当にユーザー名500と打ってみたら、意外にも一

          「Qiitaのユーザー名に3桁数字を使うときの注意」とその後 - Qiita
        • TechCrunch | Startup and Technology News

          President Joe Biden has vetoed H.J.Res. 109, a congressional resolution that would have overturned the Securities and Exchange Commission’s current approach to banks and crypto. Specifically, the resolution targeted the… How large a role humanoids will play in that ecosystem is, perhaps, the biggest question on everyone’s mind at the moment.

            TechCrunch | Startup and Technology News
          • Let's Encryptの証明書切替周りその後 | おそらくはそれさえも平凡な日々

            「Android7.1以前でLet's Encrypt証明書のサイトが見られなくなる」の続き。 色々動きがあって猶予もできて助かった形だけど、来年9月29日以降の対応をどうするか考えないといけない状況なのは当然変わっていません。先にまとめると以下。 何もせずとも来年の1月11日までは猶予が伸びた 証明書を発行する側の場合、各クライアントで --preferred-chain "DST Root CA X3" のようにオプション設定することで、来年の9/29まで先延ばしが可能 独自ドメインに対して自動でSSL証明書を発行してくれるサービスを利用している場合はサービスが声明を出していないか調べ、出してない場合は問い合わせると良いでしょう 前回以降の動き go-acme/legoに--preferred-chainオプションのpull requestを取り込んでもらいました デフォルトRoot証

              Let's Encryptの証明書切替周りその後 | おそらくはそれさえも平凡な日々
            • Kazuho Oku on Twitter: "HTTP を使うサーバクライアントアプリ作ってる人が、HTTP 的にどうするのが正しいのかな、と迷った時、見るべきドキュメントは BCP56bis かな、という話をした。HTTP の仕様ではなく、どのように使うべきかを説明した文書… https://t.co/7ke9ePZtTn"

              HTTP を使うサーバクライアントアプリ作ってる人が、HTTP 的にどうするのが正しいのかな、と迷った時、見るべきドキュメントは BCP56bis かな、という話をした。HTTP の仕様ではなく、どのように使うべきかを説明した文書… https://t.co/7ke9ePZtTn

                Kazuho Oku on Twitter: "HTTP を使うサーバクライアントアプリ作ってる人が、HTTP 的にどうするのが正しいのかな、と迷った時、見るべきドキュメントは BCP56bis かな、という話をした。HTTP の仕様ではなく、どのように使うべきかを説明した文書… https://t.co/7ke9ePZtTn"
              • マイクロソフトが「SMB over QUIC」ファイル共有プロトコル実装中。VPNなしでもインターネット上で安全にファイルサーバへのアクセスを実現へ

                マイクロソフトが「SMB over QUIC」ファイル共有プロトコル実装中。VPNなしでもインターネット上で安全にファイルサーバへのアクセスを実現へ マイクロソフトが次期Windows Serverに、HTTP/3のベースとなるQUICプロトコルを搭載する予定であることは先週の記事でお伝えしていますが、同社はこのQUICをファイル共有プロトコルであるSMBのトランスポート層に用いた「SMB over QUIC」も開発中です。 最初に同社がこれを明らかにしたのは、今年の3月に公開したブログ「SMB over QUIC: Files Without the VPN」ででした。 そして次期Windows Serverの開発状況を伝える先週のブログ「Announcing Windows Server vNext Preview Build 20201」でも、QUICをHTTP/3だけでなくSMBの

                  マイクロソフトが「SMB over QUIC」ファイル共有プロトコル実装中。VPNなしでもインターネット上で安全にファイルサーバへのアクセスを実現へ
                • パスワード変更用のURLを明示すためのwell-known URL for Changing Passwordsという仕様について

                  作成日 2023-05-31 更新日 2023-06-02 author @bokken_ tag well-known, appsec はじめに パスワード変更のためのURLを示すための、A Well-Known URL for Changing Passwords という仕様が存在する。¶ この仕様は主にクライアントサイドのパスワード管理ツールで使われる想定の仕様だ。¶ 本記事ではこの仕様がどういうものか、どういった利点があるのかについてまとめる。¶ パスワード管理ソフトとその課題 パスワード管理ツールはクロスサイトでのパスワードの再利用を防いだり、オートフィルをしてユーザビリティを高めてくれる良いツールだ。 ブラウザにもパスワード管理ツールが搭載されていたり、有名どころでは1PasswordやBitwardenのようなツールがある。¶ これらのツールの中にはパスワードの強度を教えてく

                    パスワード変更用のURLを明示すためのwell-known URL for Changing Passwordsという仕様について
                  • net/httpでつくるHTTPルーター 自作入門

                    Golangの標準パッケージであるnet/httpを使ってHTTPルーターを自作する話です。 表紙は新書メーカーさんで作成しました。 https://yubais.net/tools/paperback-maker/ 追記: 要約版をqiitaに書いてあります。手短に知りたい場合はこちらが良いかもしれません。 https://qiita.com/bmf_san/items/312fac5b3132d8bee4ca 自作ルーターがawesome-goにリストアップされました :D https://github.com/avelino/awesome-go#routers 追記: コードのハイライトを修正しました。 追記: Go Conference 2021 Autumnで"net/httpでつくるHTTPルーター自作入門"というタイトルで発表しました。 https://speakerdec

                      net/httpでつくるHTTPルーター 自作入門
                    • どうして Fastify は生の Node.js より速いの? : (*x).b=z->a+y/c

                      Fastify 速いですね Express が hapi より遅いのは意外でした Koa は本体だけだと Express 以上に何もしないので その分速めです よくみると驚きなのが http.Server より Fastify が速いというところ http.Server はフレームワークを使わない Node.js 自体の API です Koa や hapi はこれを中で使っています これより速いということは Fastify は http.Server は使わずに net などを使って ソケット通信部分を直接操作しているのでしょうか? http.Server を使ってない?Fastify のソースコードを見た限りでは 特に設定をしなければ http.createServer でサーバを作成しています つまり http.Server を使っています https://github.com/fas

                        どうして Fastify は生の Node.js より速いの? : (*x).b=z->a+y/c
                      • httpとhttpsの違い

                        TLSの有無 言うまでもないことですが、httpsでは通信路をTLSを使って保護することが想定されています。[1][2] デフォルポート httpは80、httpsは443です。[3][4] 権威性 以降の説明に入る前に前提を確認します。本稿は「httpとhttpsの違い」と題されていますが、これはURLのスキーム部分のことを指しています。URLはリソースの所在を指すものであり、通信方法はそこから二次的に決まるものです。このことを前提に置きつつ権威性について説明します。 Webにおいて、所望のリソースにアクセスする方法はひとつではありません。このような方法のうち、リソースの所有者の制御下にある(第三者による加工などが行われていないと期待される)方法で取得することを権威的アクセスと呼びます。[5] どのようなアクセス方法が権威的とみなせるかについて100%客観的で統一的な指標があるわけではな

                          httpとhttpsの違い
                        • Rustでサイトを再実装

                          このサイト r7kamura.com の実装言語をRubyからRustに変えてみた。 アプリケーションの概観 このサイトには、大別すると次の6種類のルーティングパターンがある。 GET / トップページ GET /articles/:article_id 記事ページ GET /feed.xml RSSフィード GET /links リンク集 GET /sitemap.txt サイトマップ (Google Search Console等が利用する) GET /* その他の静的ファイル (CSSや画像など) Rubyの実装では、適当なRackアプリケーション + rack-captureという構成で、Webアプリケーションとして実装しつつGitHub Pagesのために静的ファイルも吐き出せるという仕組みになっていた。 Rustの実装もほぼ同じで、適当なHTTPサーバー + 適当なHTTPクラ

                            Rustでサイトを再実装
                          • 第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp

                            本章では、HTTP/3がTCPに代わって下位層で用いるQUICについて解説します。 QUICはトランスポートプロトコル QUICはトランスポートプロトコルです。QUICの説明に入る前に、トランスポートプロトコルついておさらいします。 TCP/IPの4階層モデル プロトコルは階層で役割を分担しています。TCP/IPの4階層モデルでは、アプリケーション層、トランスポート層、インターネット層、ネットワークインタフェース層に分かれます(図1⁠)⁠。 図1 TCP/IPの4階層モデル アプリケーション層に分類されるアプリケーションプロトコルは、クライアントやサーバで動作するアプリケーションの動作に関するデータやメッセージの通信ルールを規定します。たとえばSMTP(Simple Mail Transfer Protocol)は、メールを送信する通信ルールを規定しています。HTTPはこの層に属します。

                              第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp
                            • CSRF(Cross-Site Request Forgery)攻撃について

                              ふと気になって調べたことの備忘メモです ✍ (2022/11/3追記)ご指摘頂いた内容を踏まえて加筆修正をおこないました なぜ調べたか Webアプリケーションの開発に携わっていると CSRF という脆弱性への対処を求められますが、多くの場合利用しているフレームワークが設定追加だけで対応してくれたり、既に前任者によって適切な処置がされていたりなど、実務上で目を向ける機会はその重要性と比較して少ないのでないかと思います また、Webブラウザの実装やHTTP周辺の関連仕様の変化から陳腐化している情報も多く、現代において全体感と具体的な対処法を理解するには少しばかりハードルが高いように感じていました ですので、自身の現時点での認識を明文化して残しておくことにしました なお、私はWebセキュリティの専門家でなく、一介の開発者のため、誤りが多分に含まれる可能性があります ご指摘を頂ければ修正したいと思

                                CSRF(Cross-Site Request Forgery)攻撃について
                              • QUICの実装はTCP並みの効率を実現できるか? Fastly奥氏らがベンチマークを紹介

                                現在標準化が進められている次世代HTTPの「HTTP/3」は、トランスポートプロトコルとして「QUIC」と呼ばれる新しいプロトコルを採用します。 現時点のHTTPはトランスポートプロトコルとして「TCP」が採用されています。その上で、可能な限り高速な通信が行えるようにさまざまな工夫や最適化が進められてきました。そしてもうこれ以上高速にしようとすると、TCPそのものを改善していくべきだろう、というところまできたのです。 それがHTTP/3で「QUIC」が採用される大きな理由といわれています。 TCPは内部で輻輳制御や再送などを自動的に行うことで通信が確実に行われることを保証してくれる便利なプロトコルですが、それゆえに、確実に通信が行われるまで待つ必要があるために通信環境によっては遅くなりがち、などの側面があります。 そこでQUICは、TCPのような通信の保証がない代わりにリアルタイム性の高い

                                  QUICの実装はTCP並みの効率を実現できるか? Fastly奥氏らがベンチマークを紹介
                                • Fetch APIは「PATCH」だけ大文字と小文字の挙動が異なる

                                  const url = "https://fetch-api-normalization.deno.dev"; await fetch(url, { method: "PATCH" }); await fetch(url, { method: "patch" }); 実行すると、次のようなエラーを得るはずです。 PATCH を小文字で書いた際のエラーの一例 さて、どのような条件でこのエラーが発生するのでしょうか?これが意図されたものなのだとしたら、 GET や POST は大文字・小文字を無視してよくて PATCH は無視できない理由がなにかあるのでしょうか?以下でその理由を探ってみましょう。 いつエラーが発生するか このエラーは、 Fetch API を利用して外部の HTTP サーバーに対してリクエストを行う時に、 PATCH と書くべきところを patch と書いていると発生します。

                                    Fetch APIは「PATCH」だけ大文字と小文字の挙動が異なる
                                  • 「ピアリング戦記 - 日本のインターネットを繋ぐ技術者たち」を書きました!:Geekなぺーじ

                                    書名:ピアリング戦記 日本のインターネットを繋ぐ技術者たち 著者:小川晃通 著 発行:2022年7月13日 ISBN:978-4-908686-14-6 A5判、152ページ 紙本体2000円 電子本体1800円 インターネットを構成する「技術」は世界共通です。 その仕様であるTCP/IPは万人に対して公開されており、解説書も数多くあります。 仕様や解説書は体系的に記述されているので、一見するとインターネットは実に合理的に技術的な要請に基づいて構成された形をしているように思えるかもしれません。 しかし、インターネットは人間が作り運営しているものです。 そのため、インターネットの形には「人間の営み」が少なからず影響しています。 そもそもインターネットを物理的に構築するためにはどうしても各所でお金が必要です。 回線代、場所代、電気代、運用者の人件費など、維持にはさらにお金がかかります。 お金が

                                    • https://twitter.com/koba0367/status/1532861948152680448

                                        https://twitter.com/koba0367/status/1532861948152680448
                                      • 「キャッシュは麻薬」という標語からの脱却 - id:onk のはてなブログ

                                        これは はてなエンジニア Advent Calendar 2023 の 18 日目の記事です。昨日は id:gurrium による private-isuで70万点取るためにやったこと - ぜのぜ でした。私は 50 万点ぐらいで満足してしまっていたので、しっかり詰めていて凄いなと思う。 developer.hatenastaff.com Web アプリケーション開発において、「キャッシュは麻薬」という言葉がインターネット上をよく飛び交っています。YAPC::Kansai OSAKA 2017 の id:moznion のトークでよく知られるようになったワードじゃないかな。 初出はちゃんとは分からないんですが、少なくとも 2011 年には言われていますね。 「キャッシュは麻薬」とはよく言ったものだ。— TOYAMA Nao (@nanto_vi) November 5, 2011 キャッシ

                                          「キャッシュは麻薬」という標語からの脱却 - id:onk のはてなブログ
                                        • はてなスターのひみつ - Hatena Developer Blog

                                          ハッピーホリデー!id:cockscombです。この記事ははてなエンジニアAdvent Calendarの8日目のエントリです。 今年1月、はてなスターのリニューアルを行いました。リニューアルの内容は告知をご参照ください。 はてなスターのリニューアルでは、クロスオリジンの問題を解決するために特別な実装をしています。今回は、ホリデーシーズンをお祝いして、そのひみつを詳 (つまび)らかにします。 はてなスターとクロスオリジン はてなスターは、はてなブログなどに埋め込んで利用されます。はてなブログは hatenablog.com や hatenadiary.jp などのサブドメインを利用しており、さらにはてなブログProでは独自のドメインを設定できます。 はてなスターは複数の異なるドメイン名のサイトから利用される、ということです。 要するにはてなスターはクロスオリジンで利用されます。一方ではてな

                                            はてなスターのひみつ - Hatena Developer Blog
                                          • 逆向きに接続する Reverse HTTP Transport の仕様 - ASnoKaze blog

                                            『Reverse HTTP Transport』という提案仕様がIETFに提出されています。著者はMetaとNokiaの方々らです。また、HAProxyの方も同様の機能を検討しているそうです(参考URL)。 普通のProxyサーバでは、Proxyサーバからオリジンサーバにコネクション確立するのが一般的です。そのためにオリジンサーバが外部から接続を受けられるようにする必要があります。 Reverse HTTP Transportでは、逆にオリジンサーバからProxyサーバにコネクションを確立し、HTTPリクエストを受け付けるという構成になります。コネクションの確立/TLSハンドシェイクだけが逆向きで、コネクション確立された接続上で、ProxyからHTTPリクエストが送られます。 これによりオリジンサーバをインターネットに公開する必要がなくなります。 プロトコルについて この Reverse

                                              逆向きに接続する Reverse HTTP Transport の仕様 - ASnoKaze blog
                                            • HTTP/3の基盤となる「QUICプロトコル」の標準化プロセスが完了、IETFの「RFC 9000」として

                                              HTTP/3の基盤となる「QUICプロトコル」の標準化プロセスが完了、IETFの「RFC 9000」として 現在標準化が進められている新たなHTTPである「HTTP/3」のトランスポート層プロトコルとなる予定の新しい通信プロトコル「QUIC」が、インターネットで用いられる通信プロトコルなどの標準化を行う団体のIETF(Internete Engineering Task Force)により「RFC 9000」として策定を完了、新たなインターネット標準になったことが明らかになりました。 QUIC is now RFC 9000 | Fastly QUIC is RFC 9000 | daniel.haxx.se QUICはもともとHTTPをより高速化するためにGoogleが開発し、その後IETFで標準化が進められてきました。 QUICはまずは次世代のHTTPであるHTTP/3のトランスポート

                                                HTTP/3の基盤となる「QUICプロトコル」の標準化プロセスが完了、IETFの「RFC 9000」として
                                              • RESTful APIのURI設計(エンドポイント設計) - Qiita

                                                RESTful APIのリソース設計で述べた通り、何をリソースとするかを決めたらそのリソースを識別するURIを検討する必要がある。 エンドポイントとは何か エンドポイントとはAPIにアクセスするためのURIのこと。例えば、QiitaのAPIで自分の情報を取得する時のエンドポイントは以下となる。 http://qiita.com/api/v2/users/nagaokakenichi 似たような言葉に「エントリポイント」というものがある。エントリポイントとはプログラムやサブルーチンの実行を開始する場所のこと。 Qiita視点で考えると、 http://qiita.com/api/v2/users/nagaokakenichi を参照されることでプログラムが開始されるので、Qiitaからすると上記URIはエントリポイントとなる。 つまり、エンドポイントはAPIにアクセスする側からの、エントリポ

                                                  RESTful APIのURI設計(エンドポイント設計) - Qiita
                                                • 【徹底解説】REST VS GraphQL

                                                  注意:今回の記事で載せているコードは読者に具体的なコードのイメージを持たせる目的で書いている。それ故に、実際にブラウザ上で実行しても動作しない点には注意してほしい。より専門的ににGraphQLとRESTの違いを学びたいならLogRocketの記事とApolloの記事を参考に。 はじめに 今回の記事では、Web APIの開発に重宝されるRESTとGraphQLの違いを解説する。 対象とする読者 これからREST、またはGraphQLを実務で積極的に活用したいひと 両者の違いがわからないひと 個人開発等でWeb APIをつくるひと タイトルを見てなんとなく気になったひと APIとは RESTとGraphQLの議論に入る前に、まずはAPIについて説明する必要がある。 Wikipediaによると、API(Application Programming Interface)は以下のように定義されてい

                                                    【徹底解説】REST VS GraphQL
                                                  • Hurl - Run and Test HTTP Requests

                                                    What’s Hurl? Hurl is a command line tool that runs HTTP requests defined in a simple plain text format. It can chain requests, capture values and evaluate queries on headers and body response. Hurl is very versatile: it can be used for both fetching data and testing HTTP sessions. Hurl makes it easy to work with HTML content, REST / SOAP / GraphQL APIs, or any other XML / JSON based APIs. # Get ho

                                                    • Cloudflare、NGINXに代えて自社開発のRust製HTTPプロキシ「Pingora」をグローバルCDNに採用。性能向上しつつCPUとメモリ消費を3分の1に

                                                      Cloudflare、NGINXに代えて自社開発のRust製HTTPプロキシ「Pingora」をグローバルCDNに採用。性能向上しつつCPUとメモリ消費を3分の1に CDNプロバイダのCloudflareは、同社のグローバルなCDNの基盤として長らく利用してきたNGINXに代えて、同社自身がRust製のHTTPプロキシである「Pingora」を開発し利用していることを明らかにしました。 Pingoraはすでに同社のCDNに採用され、毎日1兆回以上のリクエストを処理し、性能向上や数多くの新機能の提供を実現しつつ、従来と比較してCPUとメモリリソースの消費はいずれも3分の1程度に収まっているとのこと。 Pingoraは現時点でコードなどは公開されていませんが、いずれオープンソース化の計画についても明らかにするとCloudflareは説明しています。 Today we are excited t

                                                        Cloudflare、NGINXに代えて自社開発のRust製HTTPプロキシ「Pingora」をグローバルCDNに採用。性能向上しつつCPUとメモリ消費を3分の1に
                                                      • WebSocket 入門

                                                        注意:今回の記事はあくまで初心者向けにWebSocketの概要を理解してもらうために執筆されている。そのため、一部正確性を欠く可能性がある。詳細にWebSocketについて学びたいならMicrosoftの解説記事やWebSocket Protocolを確認してほしい。 はじめに 今回の記事ではWebSocketを解説する。 対象とする読者 WebSocketについてわからないひと WebSocketとは? WebSocketは双方向のHTTPプロトコルで、クライアントとサーバの通信で成立する。HTTPとは異なり、ws://あるいはwss://から始まる。WebSocketはHTTPとは違って、クライアントとサーバ間の接続はどちらか一方が切断されると終了する。WebSocketが動く仕組みはHTTPのそれとは異なり、ステータスコード101がプロトコルの切り替えを示す。 WebSocketが動

                                                          WebSocket 入門
                                                        • フロントエンドエンジニアも知っておきたい HTTP/3 で変わること

                                                          フロントエンドカンファレンス沖縄 2023 の登壇資料です

                                                            フロントエンドエンジニアも知っておきたい HTTP/3 で変わること
                                                          • 正しいウェブページの代わりにエラーページを強制表示させる新型サイバー攻撃「CPDoS」が発見される

                                                            ケルン工科大学の研究チームが、コンテンツ・デリバリ・ネットワーク(CDN)で配信されているウェブページの代わりにエラーページを強制的に表示させる新型のサイバー攻撃「Cache Poisoned Denial of Service(キャッシュ汚染型DoS攻撃、CPDoS)」の存在を明らかにしました。 CPDoS: Cache Poisoned Denial of Service https://cpdos.org/ CDNは、ウェブ上で表示されるコンテンツのデータ(キャッシュ)を世界中のサーバー上に分散させ、ユーザーが地理的に近い場所に存在するサーバーからデータにアクセスすることが可能にすることで、データ転送を高速化・安定化させるというシステムです。CDNはデータがサーバー上に分散して保存されるため、元のサーバーがダウンしていても別のサーバーからデータにアクセスできようになります。 そんなC

                                                              正しいウェブページの代わりにエラーページを強制表示させる新型サイバー攻撃「CPDoS」が発見される
                                                            • Goのおすすめのフレームワークはnet/http | フューチャー技術ブログ

                                                              僕としてはGoのおすすめのフレームワークを聞かれたら、標準ライブラリのnet/httpと答えるようにしています。というよりも、Goの他のフレームワークと呼ばれているものは、このnet/httpのラッパーでしかないからです。 Goでアプリケーションを作成する場合のイメージは次の通り。battery includedなアプローチは他の言語でもたまにありますが、ついてくる機能が今時のものが多くて、標準ライブラリで済むことが多いです。ウェブ開発についてもそんな感じです。 PythonとかRubyとかもそうですが、言語組み込みのウェブサーバー機能はテスト用で本番運用には機能が足りない、性能が足りない、ということから「プロダクションに耐えうるフレームワークを別に入れないと」と思う人も多いんじゃないかな、と思いますが、Goの場合は組み込みのサーバーで問題なかったりします。Node.jsに近いかも?世間に

                                                                Goのおすすめのフレームワークはnet/http | フューチャー技術ブログ
                                                              • ChatGPTをぬるぬるにする🐌Server-Sent Eventsの基礎知識

                                                                単方向通信であるということと、HTTP/1.1上で動作しているのが大きな特徴です。 また、HTTP上で動作することから、通信の互換性が高く、セキュリティモデルも使いまわせるので安心です。 どんな用途と相性がいいの? 双方向通信がしたいわけでなければ、相性の幅がとても広いです。 今回の ChatGPT のような、GPT がトークンを生成するごとに送るケースはもちろん、通知の未読件数バッジの更新、ニュース速報の表示など、サーバからイベントを送りたい時ならなんでも使えます。 HTTP/1.1で動くカラクリ SSEはHTTPのレスポンスヘッダにContent-Type: text/event-streamを指定した上で動作します。 SSEが動く流れ クライアントがサーバーに HTTP/1.1 リクエストを送信し、イベントストリームに接続します。 サーバーは、Keep-Alive 接続を使用して、T

                                                                  ChatGPTをぬるぬるにする🐌Server-Sent Eventsの基礎知識
                                                                • Cookie2 とは何か | blog.jxck.io

                                                                  Intro タイトルを見て「Cookie の新しい仕様か、キャッチアップしよう」と思って開いたのなら、以降を読む必要はない。 Cookie History 2000 年に発行された Cookie の仕様である RFC 2965 では、仕様中に Set-Cookie2/Cookie2 (以下 Cookie2) という 2 つのヘッダが定義されている。しかし 2011 年に改定された現行の RFC 6265 ではそれらヘッダは deprecate されており、実際の Web でこれらのヘッダが交換される場面を、少なくとも筆者は見たことがない。存在すら知らない開発者も多いだろう。 筆者はずっと、この仕様がどのように出てきて、どうして消えていったのかが気になっていた。 Web 上にも情報が少なく、「歴史上の理由で」とか分かったようなことを言ってる人がたまにいるくらいだ。四半世紀前のことなので経緯を

                                                                    Cookie2 とは何か | blog.jxck.io
                                                                  • 処理中のPOSTリクエストを別のサーバで引き継ぐPartial POST Replayについて - ASnoKaze blog

                                                                    なんらかの理由でWebサーバを停止する場合に、処理中のPOSTリクエストをそのまま別のサーバで引き継げるようにする「HTTP Partial POST Replay」という仕様がFacebookのAlan Frindell氏から提出されています (HTTP Workshopの資料はこちら)。 スポットインスタンスを利用していたり、サーバの設定を変えて再起動したい場合、新しいリクエストは受け付けないようにし、すでに来ているリクエストのみ処理をするのは一般的です。それでも大きなファイルをアップロードしているPOSTリクエストは処理が終わるまで時間がかかってしまう場合がありあります。 やむをえずPOSTリクエストの処理を中断してしまうと、ユーザは再度大きなファイルをアップロードしなおす必要があり、とてもストレスがかかります。 「HTTP Partial POST Replay」では、ユーザの接続

                                                                      処理中のPOSTリクエストを別のサーバで引き継ぐPartial POST Replayについて - ASnoKaze blog
                                                                    • Deep Dive into The Go's Web Server

                                                                      Goのnet/httpパッケージはとてもよくできており、Webサーバーを動かすのに必要になる「httpコネクションを確立してリクエストを読んでルーティングして……」という手続き的な処理を気にせずとも誰でも簡単にWebサーバーを立てられるようになっています。 ですが、そのnet/httpが代わりにやってくれている「裏側の処理」の部分が気になる、何やっているんだろう?と不思議に思っている方はいませんか? この本では、実際に筆者がnet/httpパッケージのソースコードを読み込んだうえで、「GoのWebサーバーがどのような仕組みで起動・動いているのか」というところについて、図を使いながら解説しています。

                                                                        Deep Dive into The Go's Web Server
                                                                      • SameSite属性とCSRFとHSTS - Cookieの基礎知識からブラウザごとのエッジケースまでおさらいする - Flatt Security Blog

                                                                        こんにちは、 @okazu_dm です。 この記事は、CookieのSameSite属性についての解説と、その中でも例外的な挙動についての解説記事です。 サードパーティCookieやCSRF対策の文脈でCookieのSameSite属性に関してはご存知の方も多いと思います。本記事でCookieの基礎から最近のブラウザ上でのSameSite属性の扱いについて触れつつ、最終的にHSTS(HTTP Strict Transport Security)のような注意点を含めて振り返るのに役立てていただければと思います。 前提条件 Cookieについて Cookieの属性について SameSite属性について SameSite属性に関する落とし穴 SameSite属性を指定しなかった場合の挙動 SameSite: Strictでも攻撃が成功するケース 例1: スキームだけ違うケース 例2: サブドメイ

                                                                          SameSite属性とCSRFとHSTS - Cookieの基礎知識からブラウザごとのエッジケースまでおさらいする - Flatt Security Blog
                                                                        • HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                                                          ハイクラス求人TOPIT記事一覧HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題 HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題 IETFで標準化が進められているWebの新しい通信プロトコルQUICとHTTP/3について、現在のインターネットが抱える課題やプロトコル設計での議論を中心に、ASnoKaze blogの後藤ゆき(@flano_yuki)さんに執筆いただきました。 2021年、Webに新しい通信プロトコルが登場しました。RFC 9000として標準化されたQUICと、その上で動作するHTTP/3です。HTTP/3はまだドラフト版ですが出版準備段階となっており、すでに実際のWeb通信でも広く使われています この2つのプロトコルは、現在のWebやイン

                                                                            HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                                                          • Building Protocols with HTTP

                                                                            Workgroup: HTTP Internet-Draft: draft-ietf-httpbis-bcp56bis Obsoletes: 3205 (if approved) Published: 22 March 2022 Intended Status: Best Current Practice Expires: 23 September 2022 Author: Building Protocols with HTTP Abstract Applications often use HTTP as a substrate to create HTTP-based APIs. This document specifies best practices for writing specifications that use HTTP to define new applicati

                                                                            • SSL/TLS実践入門 ──Webの安全性を支える暗号化技術の設計思想

                                                                              2024年4月25日紙版発売 2024年4月25日電子版発売 市原創,板倉広明 著 A5判/456ページ 定価3,740円(本体3,400円+税10%) ISBN 978-4-297-14178-3 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle 楽天kobo honto この本の概要 SSL/TLSは,通信の秘密を守るために利用されている通信プロトコルです。HTTPSやHTTP/3にも利用されており,今日のWebでは利用が一般的になっています。本書では,その最新バージョンであるTLS 1.3のしくみと,その使い方を解説します。SSL/TLSは公開されている実装例などを真似すれば基本的な動作はさせられますが,それを応用していくには技術に関する理論の理解が必須になります。しかしSSL

                                                                                SSL/TLS実践入門 ──Webの安全性を支える暗号化技術の設計思想
                                                                              • [アップデート]LambdaがHTTPSエンドポイントから実行可能になる、AWS Lambda Function URLsの機能が追加されました! | DevelopersIO

                                                                                [アップデート]LambdaがHTTPSエンドポイントから実行可能になる、AWS Lambda Function URLsの機能が追加されました! LambdaにHTTPSエンドポイントを追加して、Webフックみたいな使い方をすることができるようになる便利なアップデートです! Lambdaを使ったWebフックが作りやすくなって、かんたんに設定できるのでぜひお試しを! Lambdaに便利なアップデートが来ました! LambdaにHTTPSエンドポイントを追加して、Webフックみたいな使い方をすることができるようになるアップデートです! AWS Lambda Function URLs: built-in HTTPS endpoints for your Lambda functions これで、ちょっとLambdaをHTTPS経由で実行したいなー。なんて時に、API Gatewayを使わずに

                                                                                  [アップデート]LambdaがHTTPSエンドポイントから実行可能になる、AWS Lambda Function URLsの機能が追加されました! | DevelopersIO
                                                                                • 「418 I'm a teapot」が永久欠番(?)に ~25年前の発行されたジョークRFCの後始末/【やじうまの杜】

                                                                                    「418 I'm a teapot」が永久欠番(?)に ~25年前の発行されたジョークRFCの後始末/【やじうまの杜】