ホームページ > ウェブフロントエンド > htmlチュートリアル > 画像を使用して data_html/css_WEB-ITnose を送信するための代替アイデア

画像を使用して data_html/css_WEB-ITnose を送信するための代替アイデア

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-21 08:55:02
オリジナル
1177 人が閲覧しました

このブログの以前の記事「コードのピクセル化」では、テキストから画像を生成する方法を紹介し、エンコード/デコード ツールも提供しました。その記事で私は「これもまた楽しみ以外の目的がない」と書きましたが、まさにその通りです。しかし、今日は、写真を使用してデータを送信するという別のアプリケーション シナリオを思いつきましたので、それを共有したいと思います。

Android システムでは、多くのアプリが Web ページにいくつかのクライアント機能を実装するために、クライアント上でローカル HTTP サービスを開きます。 Webページ上で本サービスの異なるインターフェースを呼び出すことで、通常では不可能な機能を簡単に実現できます。この記事では、このアプローチ自体については説明せず、問題についてのみ説明します。Web 製品が HTTPS にアップグレードするにつれて、JSONP または XHR2 を介した HTTP サービスとの対話が機能しなくなります。

以下の段落は、私の記事「HTTPS の有効化に関するいくつかの経験の共有 (1)」から直接抜粋したものです:

最新のブラウザー (Chrome、Firefox、Safari、Microsoft Edge)、基本的には準拠しています。 W3C の混合コンテンツ仕様では、混合コンテンツを次の 2 つのカテゴリに分類しています: オプションでブロック可能とブロック可能:

オプションでブロック可能な混合コンテンツには、危険性が低く、改ざんされても深刻な問題を引き起こさないものが含まれます。仲介業者によって。最近のブラウザはデフォルトでそのようなリソースをロードし、警告メッセージをコンソールに出力します。このようなリソースには次のものが含まれます。ロードされたビデオまたはオーディオ;

    プリフェッチされたリソース;
  • さらに、すべての混合コンテンツはブロック可能であり、ブラウザーはそのようなリソースのロードを禁止する必要があります。したがって、最新のブラウザでは、HTTPS ページ内の JavaScript や CSS などの HTTP リソースはロードされず、エラー メッセージがコンソールに直接出力されます。
  • つまり、モバイル ブラウザの場合、ローカル HTTP サービスが HTTPS にアップグレードされない限り、HTTPS Web ページでスクリプト タグを作成したり、ローカル サービスを呼び出すための XHR2 リクエストを送信したりすることは、デフォルトでブロックされます。
それでは、混合コンテンツの制限を回避できる他のデータ対話ソリューションはあるのでしょうか?明らかに、画像 HTTP リソースは、オプションでブロック可能な混合コンテンツ カテゴリに属しており、デフォルトでは、アドレス バーに小さな緑色のロックが表示されないだけで、ロードが妨げられません。それらをうまく活用してください。

したがって、Web ページがアプリに一方的に通知し、戻り値を取得する必要がない場合は、ローカル インターフェイスのリクエストを直接変更して、画像を使用して送信することができます。

値を返す必要がある場合は、以前のソリューションを使用してテキストを画像にコンパイルし、読み込みに成功した後、画像をデコードしてコンテンツを復元できます。ここで注意すべき点が 1 つあります。画像応答の CORS ヘッダーを構成した後でのみ、そのピクセル データを Canvas で読み取ることができます。

原理はほぼ同じです。例を示します (リーダーを使用している学生は、元のテキストをクリックして表示してください):

この例では、HTTP インターフェイス データをサーバーから取得する方法を示します。 Canvas による HTTPS Web サイトが使用されます。実際、戻り値が列挙できる場合は、Canvas も省略できます。サーバーは幅 1px、高さ npx の画像を直接生成し、JS は戻り値を知るために画像の高さを取得できます。

この記事へのリンク: https://imququ.com/post/use-image-to-transfer-data.html、コメントしてください。

--EOF--

2016-03-10 00:38:48 に公開され、「キャンバス、HTTPS」タグが追加されました。

このサイトは「Alibaba Cloud ECS」上に展開されています。 Alibaba Cloud サービスも購入したい場合は、私の 10% オフの推奨コード

NY1Z0E

を使用できます (新規ユーザーのみ)。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート