並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 2351件

新着順 人気順

localStorageの検索結果161 - 200 件 / 2351件

  • 脱Reduxを試みて失敗した話、その原因と対策について

    さて、年末が近づいてきましたが今年も 「Redux 使うべき使わないべきか」という話で盛り上がりましたね。 僕もずっと悩める人なのですが、@f_subal さんの Tweet や @takepepe さんの Next.js の状態管理 2020 が示すように Read 要件・Write 要件の多さで使い分けるという指針には深く納得をしました。 Redux の代替になるツールやノウハウもより活発に出てきて、Redux 以外の選択肢を考えるにあたって様々な学びがあった 1 年でした。 自分も色々と Redux 以外の選択肢を試していたのですが、その中で「やっぱ Redux を使えばよかった」と思ったときがあったので、これから Redux を剥がそうと考えている人に向けてその失敗談を語りたいと思います。 自分も手探りで正解がわかっていないところなのでアドバイス・反論・指摘などがあれば頂きたいです

      脱Reduxを試みて失敗した話、その原因と対策について
    • Web Storage: セッショントークンのマシな手段 ― cookieとセキュリティ面を比較してみる | POSTD

      最近、私は「セッショントークンを、cookieの代わりに Web Storage (sessionStorage/localStorage)に保存するのは安全ですか?」ということを尋ねられました。このことについてGoogleで検索したところ、検索結果の上位のほとんどが「Web storageはcookieに比べてかなりセキュリティが弱く、セッショントークンには不向きである」と断言していました。透明性のため、私はこの逆の結論に至った理論的根拠を公に書くことにしました。 Web Storageに関する議論の中核として言われるのは、「Web StorageはsecureフラグやHttpOnlyフラグといったcookie特有の機能をサポートしていないため、攻撃者が容易に盗み取ることが可能」というものです。path属性についても言及されます。私は、これらの機能それぞれについて調べてみました。そして、

        Web Storage: セッショントークンのマシな手段 ― cookieとセキュリティ面を比較してみる | POSTD
      • Learn web development  |  web.dev

        Web Platform Dive into the web platform, at your pace.

          Learn web development  |  web.dev
        • HTML5 開発者向け!「ブラウザ仕様確認ツール」をリリースしました。 - NTTドコモ開発者情報Blog

          本日2回目のブログ更新となります! 本日1回目のブログでもお伝えしていていましたが いよいよ開発者の皆様に向けた新規企画の発表です! (タイトルでバレバレですが^^;) 本日、HTML5 開発者に向けた (スマートフォン)搭載ブラウザの仕様を確認するツール ※PCブラウザでも確認できます。 ブラウザ仕様確認ツールをリリースしました!! URLはこちらです!↓ http://spec.nttdocomo.co.jp/spbss/ 上記のURLにブラウザでアクセスすると W3Cのカテゴリに基づいたHTML5の仕様を 搭載ブラウザで利用できるか判定をして OK or NGで結果を返します! TOP画面はこんな感じで UAの情報を確認できるようにしています! 今回は、判定項目数を約2600個用意しました! あれこれ精査していくうちに開発者の皆様により多くの項目を見

          • 2012年注目のモバイル向けJavaScriptフレームワーク・ライブラリあれこれ | gihyo.jp

            昨年は、スマートフォンが急速に普及した年でした。それに伴って、モバイルサイトの重要性が増し、多くのモバイル向けJavaScriptフレームワークやライブラリが産まれました。本稿では、それらのモバイル向けのJavaScriptフレームやライブラリの中から、ピックアップして紹介していきたいと思います。 豊富な機能やリッチなインターフェースが多く用意されているフレームワーク まずは、モバイルサイトの構築を一から行えるフレームワークを紹介します。jQuery MobileやSencha Touchといった著名なフレームワークを始めとして、jQTouchやiUIなど比較的軽量なフレームワークまで簡単に解説します。 jQuery Mobile jQuery Mobileは、有名なJavaScriptライブラリであるjQueryをベースとしたモバイル向けのフレームワークです。ネイティブアプリのようなUI

              2012年注目のモバイル向けJavaScriptフレームワーク・ライブラリあれこれ | gihyo.jp
            • 6つの現場が語る、スマホアプリ開発の理想と現実~デブサミまとめレポート(スマホアプリ開発編)(1/3) - @IT

              6つの現場が語る、 スマホアプリ開発の理想と現実 デブサミまとめレポート(スマホアプリ開発編) 有限会社オングス 杉山貴章、後藤大地 2012/2/22 2月16~17日の2日間、東京の目黒雅叙園にて開発者の祭典「Developers Summit 2012」が開催された。「デブサミ」の愛称で知られる同イベントは、2002年より年1回のペースで開催され、今年で10回目を迎えた。 2日間で行われた並列5トラック、全68セッションのうち、ここではiOS(iPhone/iPad/iPod touch)、Android、Windows Phoneなどスマートフォン/スマートデバイス向けのアプリ開発に関連した6セッションをピックアップして、その様子をレポートする。 Yahoo! JAPANのスマホ向けHTML5対応とは HTML5でスマホアプリ開発、ホントのところ UXを壊さずにスマホのプラットフォ

              • HTML5

                Table of contents 1 Introduction2 Common infrastructure3 Semantics, structure, and APIs of HTML documents4 The elements of HTML5 Microdata6 User interaction7 Loading web pages8 Web application APIs9 Communication10 Web workers11 Worklets12 Web storage13 The HTML syntax14 The XML syntax15 Rendering16 Obsolete features17 IANA considerationsIndexReferencesAcknowledgmentsIntellectual property rights F

                • WebRTC: サーバのない世界でwebをつくり直す [Realtime Conf. 2013Real] - ワザノバ | wazanova.jp

                  [Video] http://2013.realtimeconf.com/video/ [Slide] https://speakerdeck.com/feross/webrtc-data-black-magic しかし、23歳にして既にこのレジュメにあるようなアウトプットを連発しているFeross Aboukhadijehはすごいですね。その彼が、Realtime Conf. 2013で、WebRTCの現状と自らの新しいプロジェクトについて語っています。 1) 概要 Video/音声/データをブラウザ間のpeer-to-peerで直接やりとりできる プラグインのインストールは不要 WebSocketスタイルのシンプルなAPI 2) 利用事例 リアルタイムチャット、ファイルシェア、遅延のないマルチプレーヤー対戦型ゲーム、分散DB、ダークweb?(p-to-pコミュニティ)、CDN Mozi

                  • Greasemonkey Script : ニコニコ動画に拡張マイリストを追加するGreasemonkeyスクリプト - 棚からパルチャギ

                    ニコニコ動画で登録数に制限のないマイリストを利用可能にするGreasemonkeyスクリプトです。 マイリスト100件なんて少なすぎるよー、とお嘆きの無料会員の方々にもお勧めです。 でも、そんなにハマってるなら500円払ってプレミアム会員になったほうが幸せだと思うのです。 GreasemonkeyのGM_SetValueを利用して、マイリストの情報をブラウザの設定情報(pref.js)に保存します。 ver.1.0.0から、localStorageを利用してマイリストの情報をローカル環境に保存します。 登録された動画のリストはそのブラウザ上でしか利用できませんが、登録数は無制限で、コメントやタグ分類による管理ができます。 Firefox(3.6.17/4.0.1/5.0)+Greasemonkey(0.9.5)、Chrome11で動作確認しています。 OperaはGM_GetValue/G

                    • 真のフロントエンドエンジニアになるために、まずはNuxt.js + Firebaseを使って簡易メモ帳を作ってみた - LiBz Tech Blog

                      目次 目次 はじめに 前提条件 Nuxtってなに? Nuxtの主な機能 Nuxt.jsやってみる Nuxt.jsのインストール Nuxt.jsでアプリ作成 nuxt.config.jsによる設定いろいろ Nuxtの構成 Nuxtでアプリ実行 ポート(3000の部分)を変更したい場合 アプリの説明/解説 レイアウト・コンポーネントの作成 レイアウト(layouts) ページ(pages) コンポーネント(components) データの扱い/保存 firebase firebaseでdatabase作成 firebaseで認証設定 store(Vuex) デバッグ ビルド herokuにデプロイ やってみて はじめに こんにちは! 11月にLiBに入社したアベと申します。 アラサー子持ちのエンジニア(エンジニアと名乗るのは憚れる...)です。 社会人3年目からWebの世界へ転身し、webデザ

                        真のフロントエンドエンジニアになるために、まずはNuxt.js + Firebaseを使って簡易メモ帳を作ってみた - LiBz Tech Blog
                      • Cookie Store API による document.cookie の改善 | blog.jxck.io

                        Intro JS から Cookie を操作する document.cookie の改善を目的とした Cookie Store API についてまとめる。 document.cookie document.cookie は、ブラウザの API における代表的な技術的負債の一つと言える。 HTML Standard https://html.spec.whatwg.org/multipage/dom.html#dom-document-cookie 基本的な使い方は以下だ。 document.cookie = "a=b" console.log(document.cookie) // a=b まず、この API の問題を振り返る。 同期 API 最も深刻なのは、I/O を伴いながら、同期 API として定義されているところだ。 この API は古くから実装されているため、I/O は非同期 A

                          Cookie Store API による document.cookie の改善 | blog.jxck.io
                        • ブラウザ対応が簡単に!「modernizr.js」の機能と利用方法 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作

                          こんにちは、最近あだ名が増えるばかりのおじいちゃんと申します。 今回はブラウザ対応で便利な「modernizr.js」を紹介します。 modernizr.jsとは modernizr.jsはJavaScriptのライブラリです。 閲覧者のブラウザがどのような機能をサポートしているかをチェックして、HTMLタグにサポート状況を判別できるクラスを付与し、その結果を記録したmodernizrグローバルオブジェクトを生成してくれます。 それらを利用して、ブラウザごとの処理を記載することが可能となります。ということで、さっそく使ってみましょう。 ダウンロード 下記よりダウンロードが可能です。 Modernizr http://modernizr.com/ modernizr.jsをダウンロードしようとするとチェックボックスが並んでいるページが表示されます。これらの項目はmodernizr.jsを使用

                            ブラウザ対応が簡単に!「modernizr.js」の機能と利用方法 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作
                          • The Ultimate Guide to handling JWTs on frontend clients (GraphQL)

                            The Ultimate Guide to handling JWTs on frontend clients (GraphQL) The Ultimate Guide to handling JWTs on frontend clients (GraphQL) JWTs (JSON Web Token, pronounced 'jot') are becoming a popular way of handling auth. This post aims to demystify what a JWT is, discuss its pros/cons and cover best practices in implementing JWT on the client-side, keeping security in mind. Although, we’ve worked on t

                              The Ultimate Guide to handling JWTs on frontend clients (GraphQL)
                            • GoogleChromeの拡張を作る上でFirefoxアドオン作者が知っておくべき10の違い【GoogleChromeでニコ動拡張を作ってみた感想】 - love_firefoxportableの日記

                              https://chrome.google.com/extensions/detail/bkdolnoepbjajdhjejfajjbjbnfhnifb 上記のニコニコ動画向けのExtensionを作ろうとして、色々と現時点でのGoogleChromeの拡張限界がわかったので書いておく。 ※環境はWindowsXP Home SP3, GoogleChrome4.0.249.30 右クリックはいじれない 調べた範囲じゃ無理。 データのダウンロード保存はできない 例えば動画サイトを開くと「DL」ボタンが生成されて、それを押すとあらかじめ指定しておいたフォルダへ自動的にバックグラウンドでダウンロードが開始される、といった動作は無理。落としたい動画URLをwindow.openで開けば自動的にダウンロードは開始されるけど、ニコ動で言えばsmile.flv?XXXXX.XXXXって感じのURLなの

                                GoogleChromeの拡張を作る上でFirefoxアドオン作者が知っておくべき10の違い【GoogleChromeでニコ動拡張を作ってみた感想】 - love_firefoxportableの日記
                              • Diggの高速化技術MXHRを解説してみる - by edvakf in hatena

                                これのこと。 AJAXサイトをスピード化するMXHR - huixingの日記 Digg the Blog » Blog Archive » DUI.Stream and MXHR どこにも解説が無かったので、詳しく読んだ。 上の記事から引用すると、「サーバーとクライアント間で、ただひとつだけのHTTPコネクションを開く。これによりサーバーがページのどのパーツを先行して読み込むかをコントロールすることが可能になり、ユーザーにとってはページ読み込みがほぼ一瞬で済むことを意味する。」という技術。XMLHttpRequest を使って複数のデータを受信する場合に効果がある。 まずデモから デモ1は10個のテキストをダウンロードして表示するもの。 デモ2は300個の画像をダウンロードして表示するもの。 どちらも左側 (MXHR 有効) が完了した後に右側 (MXHR 無効) を開始するので驚かない

                                  Diggの高速化技術MXHRを解説してみる - by edvakf in hatena
                                • IE7 が死んだらできるいくつかのこと( caniuse.com から見繕っただけ) - oogatta のブログ

                                  IE6 への対応が一段落した昨今、 IE7 もいよいよ事実上市場から姿を消す日が近づいてきたようです。flickr が今年以降リリースする新機能にて IE7 をサポートしないことを表明しました。私の勤務先でも、今ものすごい勢いで IE7 のシェアが低下しており、今年の夏から冬にかけて、今の IE6 と同じくらいのシェアになるかもしれない勢いです。 というわけで、 IE の最低動作保証バージョンが 7 から 8 になったら何ができるようになるのか、僕らの caniuse.com を見てざっと洗い出してみましたのでご参照ください。 CSS inline-block display:inline-block が使えます。IE 6/7 では "display:inline; zoom:1;" で代用していたと思います。 Table Display display:table 、 display:t

                                    IE7 が死んだらできるいくつかのこと( caniuse.com から見繕っただけ) - oogatta のブログ
                                  • HTML5でiPhone用Webアプリをオフライン対応に

                                    HTML5でiPhone用Webアプリをオフライン対応に:iPhoneで動かす業務用Webアプリ開発入門(5)(1/2 ページ) モバイルWebアプリはオフライン対応が必須! いよいよ最終回の今回は、「Application Cache(アプリケーションキャッシュ)」を使います。 HTML5で導入されたアプリケーションキャッシュを使うと、WebアプリをWebブラウザのキャッシュに載せてオフラインで利用できるようになります。特に、前回の「HTML5のlocalStorageでiPhone用Webアプリを高速化」で紹介したHTML5の「localStorage」と組み合わせると、一度ダウンロードしたデータについては完全にオフラインでアプリが動作するようになります。 オフラインでの利用に対応して、3G回線など接続が安定しない環境でも業務用Webアプリが快適に使えるようにしてみましょう。 「キャッ

                                      HTML5でiPhone用Webアプリをオフライン対応に
                                    • Go言語のスライスを理解しよう

                                      こちらのスライドは以下のサイトにて閲覧いただけます。 https://www.docswell.com/s/ockeghem/ZM6VNK-phpconf2021-spa-security シングルページアプリケーション(SPA)において、セッションIDやトークンの格納場所はCookieあるいはlocalStorageのいずれが良いのかなど、セキュリティ上の課題がネット上で議論されていますが、残念ながら間違った前提に基づくものが多いようです。このトークでは、SPAのセキュリティを構成する基礎技術を説明した後、著名なフレームワークな状況とエンジニアの技術理解の現状を踏まえ、SPAセキュリティの現実的な方法について説明します。 動画はこちら https://www.youtube.com/watch?v=pc57hw6haXk

                                        Go言語のスライスを理解しよう
                                      • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

                                        はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

                                          はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
                                        • Web Storage について - へっぽこプログラマーの日記

                                          ひさしぶりのエントリになります。JavaScript Advent Calendar 2010 の24日担当です。 この Advent Calendar では、12月1日からクリスマスの12月25日まで1日ずつ持ち回りでblogに書くことになっています。お題に"JavaScript"とあるように、blogは、JavaScriptに関するものになります。他の方々も面白いことを色々を書いておられますので、是非読んでみてください。 さて、何やら世間はクリスマスイブで盛り上がっていますが、仕事で缶詰の私には関係ありませんので(もちろん仕事がなくても関係ありませんが…)、今回は、HTML5 の API のひとつである、Web Storage について紹介したいと思います。 割と初心者向けの内容になります。 Web Storage とは Web Storage は、データをブラウザ上に永続的に保持する

                                            Web Storage について - へっぽこプログラマーの日記
                                          • 実況中継シリーズ Vue.jsで実現するMVVMパターン Fluxアーキテクチャとの距離 - Re.Ra.Ku アドベントカレンダー day 13 - Re.Ra.Ku tech blog

                                            前説 丸山です。Re.Ra.Ku. アドベントカレンダー13日目の記事です。前日はiOSアプリのUIをコードで書いてみる話でした。明日はおそらくScalaの話になると思います。 さて、以前も話題にしましたが、builderscon2016が先日開催されました。チケットは3hでSOLD OUT。プラチナチケットと化した参加権ですが、発表する側ならば実質無料で参加し放題!これはいっそ申し訳ないレベルでは!? というわけで、せっかく発表したのでその内容をなるべく多くの手段で共有したい。そう思い、今回も実況中継シリーズを弊社テックブログで行います。実況中継シリーズというのは、プレゼンをブログで再現するアレです。なお、実際のプレゼンは動画になってYoutubeにアップロードされております。builderscon公式サイトのセッション詳細ページからもご覧いただけますので、よろしければそちらも合わせてご

                                              実況中継シリーズ Vue.jsで実現するMVVMパターン Fluxアーキテクチャとの距離 - Re.Ra.Ku アドベントカレンダー day 13 - Re.Ra.Ku tech blog
                                            • JavaScriptでのテストや開発についてのアウトプット - Block Rockin’ Codes

                                              最近JavaScriptを個人的に勉強しているんですが、そんなJS初心者ながら色々試すなかで気が付いた開発とかTDDとかについて色々思うところをアウトプットしてみようかと思います。 一番多いのは、ClientSideJSで、使ってるのはjQueryとQunitが中心でした。 でもこれからは別のフレームワークや、ServerSideJSなんかも出てきますし、 今読んでる本が終わったら、こっちの本も見てみたいと思っているので、 Test-Driven JavaScript Development: Safari Books Online その前にこれを書いておこうという目的です。自分に付ける一つのTagという感じです。 あまり一貫性に拘らず、垂れ流したいと思います。 Ajax と API 以前こんな記事を書いたように、サーバ側がAPIでデータを提供し、ロジックをクライアント側に固めるタイプの開

                                                JavaScriptでのテストや開発についてのアウトプット - Block Rockin’ Codes
                                              • Vue.js + Vuexでデータが循環する全体像を図解してみた - Qiita

                                                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 2019年の2月まで表参道のプログラミングスクールでVue.js(+Nuxt.js)を教えていました。 とある生徒に「Vue.jsとVuexの関連がわからないので図解して欲しい」と頼まれてホワイトボードにサクッと書いて説明してみたらわかりやすいと大好評。 しかもその生徒が私のラフ図をキレイな動画に作り直してくれたのでカットごとの紹介記事を書くことにしました。 この記事でわかること state/mutations/commit/actions/dispatchの違いがわかるようになります。 getterやsubscribeについては扱いま

                                                  Vue.js + Vuexでデータが循環する全体像を図解してみた - Qiita
                                                • TypeScriptでjQueryを使ってJavaScript MVCメモ帳を作る | DECONCEPTER

                                                  jQueryを使ってメモ帳アプリを作る jQueryの定義ファイルは公式サンプルのいくつかに同梱されている。jQueryUIの定義ファイルと合わせて下記にもコミットした。今回はなんちゃってMVCでメモ帳を作る。機能は保存ボタンを押したらlocalStorageにデータを保存して一旦とじてもメモ帳として使える簡易Webアプリとする。 TypeScriptをjQueryで使う方法 TypeScriptでjQueryを記述したファイルをコンパイルしようとしても The name 'jQuery' does not exist in the current scope となってjQueryなんてありませんと怒られてしまう。jQueryを使ったコードをコンパイルしたい場合はjQueryの定義ファイルを読み込む必要がある。 jQueryの定義ファイル jQueryの使い方 定義ファイルを作業フォルダに

                                                  • 【6/22報告】5月30日からの断続的な障害につきまして|ニコニコインフォ

                                                    ニコニコ各種サービスにおいて、2018年5月30日から2018年6月12日まで、複数回の障害を発生させてしまいました。ご迷惑をおかけして申し訳ありませんでした。 6月12日までに発生した障害について、障害の内容と再発防止策をお知らせします。 ※社内サービス名などの社内用語は一般的な言葉に置き換えています。 5月30日【ユーザーフォロー】ユーザーフォローに失敗する 等 ■ 障害発生時間 2018年5月30日14時30分ごろ ~ 2018年5月30日19時40分ごろ ■ 障害の発生したシステム リレーションデータベース基盤 ■ 障害の影響が波及したシステム ユーザーフォロー基盤, 通知連携基盤 ■ 障害の内容 特定のユーザーによる攻撃的なアクセス(過剰なユーザーフォロー状態の操作)によって、ユーザーフォロー基盤が利用しているリレーションデータベース基盤が過負荷状態に陥りました。 その結果、ユー

                                                      【6/22報告】5月30日からの断続的な障害につきまして|ニコニコインフォ
                                                    • 失敗事例で学ぶ負荷試験

                                                      こちらのスライドは以下のサイトにて閲覧いただけます。 https://www.docswell.com/s/ockeghem/ZM6VNK-phpconf2021-spa-security シングルページアプリケーション(SPA)において、セッションIDやトークンの格納場所はCookieあるいはlocalStorageのいずれが良いのかなど、セキュリティ上の課題がネット上で議論されていますが、残念ながら間違った前提に基づくものが多いようです。このトークでは、SPAのセキュリティを構成する基礎技術を説明した後、著名なフレームワークな状況とエンジニアの技術理解の現状を踏まえ、SPAセキュリティの現実的な方法について説明します。 動画はこちら https://www.youtube.com/watch?v=pc57hw6haXk

                                                        失敗事例で学ぶ負荷試験
                                                      • Reactの技術質問!!これで面接を圧倒すべし!

                                                        最近フロントエンドの副業案件の面接を受けていて、聞かれた技術質問や準備しておいた方が良い質問をまとめます。(実務経験 約2年) 今回何回か面接をしましたが、正直技術質問って普段普通に実装していてもそれを言語化して答えるのって結構難しいです。 面接はコミュ力ではなくて準備力です! しっかり準備して挑みましょう! 前提 面接を受けたときのスキル感は下記です。 フロントエンドが主戦場で、api周りはNode.jsで基本的なApiであれば対応可能。 インフラはそこまで経験なしといった感じです。 応募ポジション: フロントエンドエンジニア 応募先のフロントエンドスタック: Next.js, TypeScript 実務経験: 1年8ヶ月 言語、フレームワークの実務経験年数 Nuxt.js(Vue) ... 1年8ヶ月 Next.js(React) ... 半年(個人開発では2年触っている) TypeS

                                                          Reactの技術質問!!これで面接を圧倒すべし!
                                                        • 社内認証パスワードレス化のすゝめ

                                                          パスワードレスとは 「パスワードレス」とは言葉通り「パスワードが要らない」という意味です。パスワードにはたいてい「英数字・記号を含む8文字以上の複雑な文字列にしてください」「一年ごとに変更をしてください」といった煩わしい制約が存在します。利用者にしてみれば毎回違うパスワードを考えたり覚えたりするのは負担ですし、結局簡単なものや同じようなパスワードを使いまわしがちになり、管理者としても望んだ結果ではないという問題があります。パスワードレスはそういった煩わしさから利用者・管理者双方を解放します。 ヤフーの社内認証事情 ヤフーには一万人を超える社員が在籍しており、毎日一回以上認証の機会があります。 社員が社内ツールにアクセスすると、まずはじめに共通の入口である内製の社内認証基盤へとリダイレクトされます。そこで社員は実際のログイン手段として以下の三種類の認証方式から選択します(図1)。 社内ID/

                                                            社内認証パスワードレス化のすゝめ
                                                          • [翻訳記事]マイクロフロントエンド - マイクロサービスのフロントエンドへの応用

                                                            モダンな Web アプリを異なる JavaScript フレームワークを使う複数チームで開発するためのテクニック はじめに この記事は翻訳記事です。 原著者の許可をとって翻訳・掲載しています。 原文はこちらです。 翻訳者 マイクロフロントエンドとは? マイクロフロントエンドという言葉は 2016 年の終わりにThoughtWorks Technology Radarで言及されました。 それはマイクロサービスの考え方をフロントエンドに拡張したものです。 現在の Web のトレンドは多機能でパワフルな SPA です。 SPA はフロントエンドとバックエンドを切り離すという、マイクロサービスの考え方に基づいています。 開発をすすめていくと、特に複数のチームで管理している場合 フロントエンド層が肥大化して管理が難しくなりがちです。 これを「モノリシックなフロントエンド」と呼びます。 マイクロフロン

                                                            • Intelligent Tracking Prevention 2.3

                                                              Note: Read about past updates to this technology in other blog posts about Intelligent Tracking Prevention, the Storage Access API, and ITP Debug Mode. Intelligent Tracking Prevention (ITP) version 2.3 is included in Safari on iOS 13, the iPadOS beta, and Safari 13 on macOS for Catalina, Mojave, and High Sierra. Enhanced Prevention of Tracking Via Link Decoration Our previous release, ITP 2.2, foc

                                                                Intelligent Tracking Prevention 2.3
                                                              • JWTを使った今どきのSPAの認証について | HiCustomer Lab - HiCustomer Developer's Blog

                                                                TL;DR JWTはCookieを使った認証の代わりに使うのはきつい。 コードを静的にホスティングしているSPAの話。 JWTの有効期間を長くすれば危険で、短くすればUXが犠牲になるというトレードオフがある。 AWS AmplifyはlocalStorageにJWTを保存 悪意のあるThird partyライブラリが混ざっていたらJWTを抜かれる。 yarn.lockが依存している全ライブラリを監査することはつらい。 Auth0ではiFrameを活用してメモリ上にJWTを格納できる Auth0いいね😍 まくら Youtubeが大好きなHiCustomerの小田です。ちょっと遅いですが年明け最初のエントリーです。今年もテックブログをよろしくお願いします😎ちなみに、気分がいいので年明けに観ていたYoutubeのエントリーの中で一番おもしろかった動画を紹介します。世界中で有名な「Auld L

                                                                  JWTを使った今どきのSPAの認証について | HiCustomer Lab - HiCustomer Developer's Blog
                                                                • TypeScriptとGraphQLで実現する型安全なAPI実装

                                                                  この記事はTSKaigi2024での以下の私の発表内容を書き下ろしたものです。 なぜAPIに型をつけたいのか 現代のWebのシステム開発において、クライアント・サーバーともに型のある言語で開発されることが増えてきました。静的な型検査はコードの堅牢性やよりよいメンテナンス性の向上をもたらします。 プログラミング内部だけで型検査をするだけでも十分メリットはありますが、外部I/Oに対する型付けが不十分だとそのメリットを最大限に発揮してるとは言えません。外部I/Oとは、例えばWebフロントエンドだとLocalStorageやDOMからの入力値、それからネットワーク通信(今回はこれをAPIと呼びます[1])などですね。サーバー側でいうとAPIからの入力・レスポンスやデータベースへの読み書きが該当します。 個人的な経験から言うと、Webシステムの開発におけるエラーの多くはAPIやデータベースとのやり取

                                                                    TypeScriptとGraphQLで実現する型安全なAPI実装
                                                                  • 2020年にフロントエンド開発者が作りたい9つのプロジェクト - Qiita

                                                                    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? こちらの記事は、Simon Holdorf 氏により2020年01月に公開された『 9 Projects to Inspire Front-End Developers in 2020 』の和訳です。 本記事は原著者から許可を得た上で記事を公開しています。 2021年改訂版はこちら! 「ポートフォリオに役立つJavaScriptプロジェクト40選(動画あり)」 続編もどうぞ!「フロントエンド開発者のための刺激的なプロジェクト10選」 最初からはっきりと言ってしまいましょう。プログラミングに関する本を何冊読んでも、ビデオやポッドキャストを

                                                                      2020年にフロントエンド開発者が作りたい9つのプロジェクト - Qiita
                                                                    • pixivポップボードのキャッシュの仕組みとFacebookのUIの話

                                                                      pixivポップボードのキャッシュの仕組みとFacebookのUIの話 こんにちは。JavaScript Advent Calendar 2011 オレ標準コース18日目の@ykskです。 先日pixivにポップボードという通知機能がリリースされました。自分がお気に入りユーザーに追加されたり、投稿したイラストがブックマークされたりした時にヘッダーに未読件数などのお知らせを表示します。僕は直接機能を実装していたわけではないのですが、リリース直後に起こった負荷の問題でJSを書きました。今日はその話をします。主にUIの話です! え! リリース直後、定期的に未読数の更新をAjaxで行っていた部分の負荷が急激に上がりました。ページロード時にHTMLに未読数を埋め込んだあと、2分ごとに未読数取得APIへリクエストするという処理です。 ポップボードはヘッダーに出るため、ほぼ全てのページでこの処理が入りま

                                                                      • 著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則

                                                                        こちらのスライドは以下のサイトにて閲覧いただけます。 https://www.docswell.com/s/ockeghem/ZM6VNK-phpconf2021-spa-security シングルページアプリケーション(SPA)において、セッションIDやトークンの格納場所はCookieあるいはlocalStorageのいずれが良いのかなど、セキュリティ上の課題がネット上で議論されていますが、残念ながら間違った前提に基づくものが多いようです。このトークでは、SPAのセキュリティを構成する基礎技術を説明した後、著名なフレームワークな状況とエンジニアの技術理解の現状を踏まえ、SPAセキュリティの現実的な方法について説明します。 動画はこちら https://www.youtube.com/watch?v=pc57hw6haXk

                                                                          著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
                                                                        • Awesome JavaScript : 素晴らしい JavaScript ライブラリ・リソースの数々 - Qiita

                                                                          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 元記事: Awesome JavaScript Awesome List in Qiita Awesome Ruby Awesome Java Awesome Node.js Awesome Python Awesome Go Awesome Selenium Awesome Appium パッケージマネージャ JavaScript ライブラリをホストし, それらを取得してパッケージ化するためのツールを提供します npm - npm は JavaScript のためのパッケージマネージャです. Bower - Web のためのパッケージ

                                                                            Awesome JavaScript : 素晴らしい JavaScript ライブラリ・リソースの数々 - Qiita
                                                                          • 技術のトレンドと開発テクニックの知見を、無料で公開します! - Qiita

                                                                            Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 技術のトレンドと開発テクニックの知見を、無料で公開します! いかに無駄な努力をせず、効果的にトレンドに沿ったアプリ開発ができるかを研究してきました。 自分が一番知見のある、フロントエンドの分野中心に見解を述べたいと思います。 結論から言うと、 React, Next.js, Typescript, Tailwind, react-query, prettier, Stylelint, auth0, tRPC, Prisma, playwright, vscode, github actions, PostgreSQL, Terrafor

                                                                              技術のトレンドと開発テクニックの知見を、無料で公開します! - Qiita
                                                                            • Google Chrome 5の新機能とChrome 6の計画 | gihyo.jp

                                                                              Google Chrome 5のリリースが刻一刻と迫ってきました。その注目の新機能と開発者向けの変更点に加え、Chrome 6を見据えた今後のスケジュールなどを詳細にお届けしたいと思います。 まず、Chrome 5の最大ニュースはなんといってもMac版、Linux版がそれぞれ正式にリリースされる予定という点です。これまで、Mac版とLinux版はベータ版と開発版が提供されていましたが、ついに安定版がリリースされる予定です。特にMac版はMac OS Xに馴染むようにかなりの改良が加えられているので、注目のリリースとなりそうです。 さて、これまでのリリースを簡単に振り返ってみます。シンプルで高速なブラウザとしてChromeがリリースされてから、Chrome 2では基本機能の充実と高速化、Chrome 3ではテーマのサポート、Chrome 4では拡張機能のサポートとブックマーク同期、Chrom

                                                                                Google Chrome 5の新機能とChrome 6の計画 | gihyo.jp
                                                                              • Indexed Database API について

                                                                                Indexed Database API(以下、indexedDB)について、これまで追いかけてきた情報をとりまとめたので公開します。 indexedDBは当初は仕様が固まっておらず、サンプルコードも当然のように動かなかったので(今も動きませんが…)、検証するにはかなりハードな状況でした。最近になってどうにか動くようになってきたので、@komasshu さんと色々やり取りしながら一通りの動作を確認しました。 現時点で利用できるブラウザは Chrome 9 以降 または Firefox 4 beta 8 以降となります。まだまだ仕様は動いていますので、検証の際は、なるべく最新の開発版を使うことをおすすめします。本エントリーでは、Chrome 9 beta 、Firefox 4 beta 8 にて検証します。また、資料は、2011年1月20日時点の W3C Editor's Draft を参照

                                                                                  Indexed Database API について
                                                                                • Almin.js | JavaScriptアーキテクチャ

                                                                                  autoscale: true Almin.js | JavaScriptアーキテクチャ 自己紹介 Name : azu Twitter : @azu_re Website: Web scratch, JSer.info 中規模以上のJavaScript 設計が必要になる 正しい設計はない Bikeshed.js :bike: 人、目的、何を作るかによってアーキテクチャは異なる 前回の続き? How to work as a Team Read/Write Stack | JavaScriptアーキテクチャ 用語 設計の目的 中規模以上のウェブアプリ SPAというよりは、画面が複雑なElectronアプリのようなイメージ スケーラブル 人、機能追加、柔軟性、独立性 見た目が複雑ではないアーキテクチャ 書き方が特殊ではなく見て分かるもの 設計の目的 テストが自然に書ける パーツごとに無理なく