問題タブ [data-uri]
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.
dialog - データ URI アンカー リンクをクリックしたときに、Chrome / Safari で [名前を付けて保存] ボックスを強制する
上記は、base 64 でエンコードされた csv データ エクスポートを含むデータ URI です。アプリのレポート ページで、各ページ ビュー内にエクスポートを埋め込んで、エクスポートがデータベースへの別のトリップを必要としないようにします。
Firefox 3 では、このリンクをクリックすると、[名前を付けて保存] ダイアログ ボックスが開きます。Chrome 9 でクリックしても何も起こりません。Chrome で右クリックして名前を付けて保存すると、デコードされた csv がファイルに書き込まれます。Safari でクリックすると、デコードされた CSV データがブラウザ ウィンドウで開き、手動で保存できます。
IE では...誰が気にしますか?
これを再現して、その<a>
タグ全体を test.html という空のファイルにコピーし、各ブラウザーで開くことで、自分でテストできます。私のアプリのコンテキストとまったく同じように動作します。
質問: ユーザーが [データ URI] リンクをクリックしたときに、Firefox のように [名前を付けて保存] ダイアログを強制的に表示する方法はありますか? または、この矛盾を回避する他の方法はありますか?
理論的には、Firefox、Chrome、および Safari はすべてデータ URI をサポートしています。実際には.......
javascript - データ URI 機能を備えたオンライン RTE (リッチ テキスト エディター) JavaScript ライブラリ
ユーザーがリッチな Web コンテンツを作成できるようにする RTE JavaScript ライブラリ (tinyMce など) を探しています。私は次のようなものを見つけたいと思っています:
- 軽量(必須ではありません)
- バイナリデータを「データuri」に変換できる画像アップロードを許可し、アップロードした画像をユーザーが編集中のページに埋め込みたい。この機能が提供されていない RTE がある場合は、この機能を簡単に拡張できる RTE を推奨してください。
- アジア言語を含む多言語サポート。
- できれば jQuery プラグインとして機能します。
以前にこれを行ったことがある場合は、経験を共有してください。
javascript - データ URI のメディアタイプで可能なパラメーターは何ですか?
「データ」URL スキームは、データ uri がメディアタイプにオプションのパラメーターを含めることができることを示唆しています。
MSDNのデータ URI ページにも記載されています。MDN データのuri ページにはありません。
charset 以外に、データ URI のメディアタイプで使用できるパラメーターは何ですか?
javascript - IE6でjavascriptでbase64PDFを開く
javascriptには、base64でpdfを保持する変数があります(pdfはflexで生成され、jsに渡されます)。ブラウザで開きたい(つまり、ブラウザに[開く/保存]ダイアログボックスを表示して、ユーザーがPDFを開いたり保存したりできるようにしたい)。
一部のブラウザでは正常に機能するデータURIを使用していますが、IE6/7ではサポートされていません。
このPDFをIE6および7で開くにはどうすればよいですか?データURIの代わりとしてMHTMLについて読んだことがありますが、MHTMLで必要なことができるとは思いませんか、それともできますか?今のところPDFを開く必要がありますが、将来的にはxls(MS Excel)ファイルのサポートも追加する必要があります。現在、私はFlashのFilereference.saveを使用して、ユーザーがpdfをディスクに保存して開くことができるようにしていますが、クライアントは、ユーザーに最初に保存するのではなく、自動的に開く選択肢をユーザーに与えることを主張しています。
node.js - Palm デバイスに画像が保存されない
更新: webOSバージョン 2.1...
このbase64でエンコードされた画像データは、画像のソースに追加すると、次のように正しいデータ画像を生成します。
カスタム サービスを使用して画像を保存しようとしていますが、正しい画像が保存されません。画像を保存するためのNode.jsコードは次のとおりです。
保存された画像のピクセル値はまったく異なります。
編集
上記の画像データが正しくないことがわかりました。PNG ライブラリを使用して、キャンバス ピクセル配列の base64 画像データを生成しています。リンクはhttp://www.xarg.org/2010/03/generate-client-side-png-files-using-javascript/です。
それは に代わるものcanvas.toDataURL();
です。webOS は toDataURL をサポートしていないため、ライブラリを使用する必要がありました。
キャンバスの画像データをピクセル配列として操作するために、このライブラリで使用したコードを次に示します。
このライブラリは機能しますか? どこで間違っていますか?
html - 主要な電子メール クライアント ソフトウェアでのデータ URI サポートはどのようなものですか?
データ URIは、画像やその他のバイナリ データを HTML に埋め込むための標準的な方法であり、ブラウザのサポートは Web 上で十分に文書化されています。(IE8 は、URI ごとに最大 32 KB のサイズでデータ URI をサポートする IE の最初のバージョンでした。他の主要なブラウザーは、それよりも長くサポートしています。)
私の質問は、デスクトップ メールと Web メール クライアント ソフトウェアについてです。
HTML 電子メールを作成する場合、標準的な方法は、画像を添付ファイルとして含めるか、外部からロードする (つまり、画像を追跡する) ことです。これらには両方とも欠点があります (一部のクライアントはこれらの添付ファイルをすべて一覧表示しますが、多くのクライアントは正しくブロックするか、外部画像を表示するためにユーザーの操作を必要とします)。したがって、データ URI は良い方法のように見えますが、それは電子メール リーダーでサポートされている場合に限られます。
では、この機能のサポートに関する最近の研究へのリンクを持っている人はいますか? または、これをまったく調査しましたか?たとえば、CSS サポートの概要は次のとおりです。私が興味を持っているクライアントソフトウェアは次のとおりです。
デスクトップ(バージョン情報を含む): Outlook、Apple Mail、Thunderbird、Evolution、Lotus Notes、AOL、Eudora
ウェブメール: Gmail、Live/Hotmail、Yahoo! メール、AOL
モバイル: Android、iPhone
javascript - base64 null の後に =? が続くと、HTML5 データ URI が失敗します。
私は JavaScript で非常に不潔なことをしており、奇妙な問題に遭遇しました。
静的サイズのバッファーを満たすバイナリ データを作成しています。内容がバッファを満たさない場合、残りはヌル文字で埋められます。
次のステップは、base64 に変換することです。
サイズ (バイト) は常に 3 の倍数であるとは限らないため、最後にパディングを追加する必要がある場合があります。バッファー内の最後のバイトは常に null です (実際には、約 1 KB の null です)。
これを Firefox と Chrome で base64 に変換するとERR_INVALID_URL
、末尾に「=」があるとエラーが発生しますが、そうでない場合は正常にダウンロードされます。
例えば:
私のファイルは機能しますが、仕様に達していません。
これが無効な base64 である理由はありますか? さらに重要なことに、これはバグですか、それとも仕様の一部ですか?
編集:
Firefox と Chrome の間のいくつかの奇妙な点を示す回答を投稿しました。標準が何を指定しているか知っている人はいますか? それとも、断片化を引き起こす緩い仕様の 1 つですか? できれば決定的なものが欲しいです。
request - ブラウザーが実行時にデータ URI をサポートしているかどうかを確認する
asp.net c# Web アプリケーションでデータ URI ベース 64 文字列を使用しようとしています。一部のブラウザーのみがこれをサポートしていることを知っているため、実行時に現在のブラウザーが base 64 文字列をサポートしているかどうかを確認する必要があります。
ユーザー要求オブジェクトから、現在のブラウザーを記述する HttpBrowserCapabilitiesWrapper オブジェクトにアクセスできます。
ブラウザがデータURIをサポートしている場合、これに基づいて見つけることは可能ですか? または、このオブジェクトに基づいていない場合、実行時にブラウザがデータ uri をサポートしているかどうかを確認する方法はありますか?
python - Python でファイル ストリームをデータ URI に変換するにはどうすればよいですか?
Python で画像のファイル ストリームがあります。
これをデータ URIに変換するにはどうすればよいですか?
debugging - Web ページを http:// から data: uri にリダイレクトするにはどうすればよいですか?
サーバーへの接続が制限された Web ページをロードしたいと考えています。クロスアプリケーション リンクがありますが、サファリはデータを開けません: uri. とにかくhttp://で始めることはありますか?URLのjavascriptはどうですかhttp://javascript:window.location="data:"?
、サーバーに接続する必要はありません(オフラインのもの)。
そうでない場合、単純な php ページを使用してリダイレクトできますか? 元:
http://someserver/index.php?input="data:text/html;charset=UTF-8,htmlhere"
そしてphpスクリプトで: