ハイパーテキストを解き放ち、その配信の可能性を古典的なクライアントサーバー方式だけでなく、ピアツーピアネットワークでも拡大する時です。 小さな努力で完全に認識されるためには、ウェブマスターは試してみる必要があります。 これを行うには、正しい表示をHTMLにパックするために必要なリソースが必要です。 スクリプトとスタイルですべてが明確な場合は、対応するスクリプトとスタイルタグのコンテンツを使用してそれらのテキストを挿入できます。画像の事前処理はすでに必要です。
画像処理
画像はプログレッシブモードを有効にしてJPEGで保存する必要があり、圧縮レベルを調整して、画像が完全に読み込まれたときだけでなく、IEのトリミングバージョンでも十分に許容できるようにする必要があります(データURLの32768文字の制限)。 このために、たとえば、私はIrfanViewを使用しました。 画像を保存するときは、チェックマークをプログレッシブモードにします(プログレッシブJPGとして保存)。 さらに、「元のJPG品質で保存してみてください」に注意を向けました。 ファイルをすべて削除しました。ファイルに追加のデータは必要ありません。
データURLを使用します
次に、受信した画像をbase64でエンコードします。 メモ帳++のMIMEツールプラグインは、これをうまく機能させます。
- メモ帳で画像ファイルを開く++
- 編集->すべて選択
- MIMEツール-> Base64エンコード
- 「data:image / jpeg; base64」の先頭の結果に追加します
- HTMLドキュメントをコピーして貼り付ける
<img src="data:image/jpeg;base64,/9j/4AAQS..." alt="" />
IEのフレームワークに適合するように他の画像形式、つまりbase64を使用する場合は21830バイトを試してください。 また、MIMEタイプのイメージ/ jpegを適切なファイルタイプに変更することを忘れないでください。
ハイパーテキストファイル名と外部リソース
要件:
- 名前の一意性-ファイルが他の多くのディレクトリと同じディレクトリに表示される可能性があるという事実を考慮して、ファイル名を選択する必要があります。 これを行うには、作成時間またはcrcファイルを名前に追加できます。
- 一意のプレフィックス-ファイル名を作成者の名前(または作成されたすべてのページに使用する別のキー)で開始することをお勧めします。 したがって、ファイルを作成者別にグループ化すると便利です。
03.04.2012 13:04 947 346 archimeta-ru-kryg-2012-04-03-13-04.mp4 03.04.2012 13:05 1 792 810 archimeta-ru-kryg-2012-04-03-13-04.ogv 03.04.2012 13:05 1 107 873 archimeta-ru-kryg-2012-04-03-13-04.webm 03.04.2012 14:28 243 432 ivan386-p2p-html-2012-04-03-13-04.html
外部リソース
残念ながら、すべてを1つのファイルにパックできるわけではありません。 著しいHTMLサイズは、ブラウザのパフォーマンスの問題を引き起こす可能性があります。 そのため、ビデオとオーディオのポッドキャストは別々に保持(およびダウンロード)する必要があります。 さらに、完全な互換性のために、3種類のビデオと3種類のオーディオが必要です(もちろん、オプションでwavすることもできます)。
ビデオとオーディオに必要なすべてのバージョンがあり、それらをrhashで実行し、それぞれの結合磁石を取得します。
たとえば、次のようなcmdファイルを作成しました。
%~d0 cd %~p0 rhash --torrent -p "%%f#magnet:?xt=urn:ed2k:%%e&xl=%%s&dn=%%u&xt=urn:tree:tiger:%%t&xt=urn:btih:%%{btih}" %1 %2 %3 %4 %5 %6 %7 %8 %9 | clip
結合された磁石は直接クリップボードにあり、急流ファイルが近くにあります。 ホイスト付きの真のクリップが登場したので、古き良きHPには別のユーティリティが必要です。 まあ、または古き良き方法:
rhash --torrent -p "%%f#magnet:?xt=urn:ed2k:%%e&xl=%%s&dn=%%u&xt=urn:tree:tiger:%%t&xt=urn:btih:%%{btih}" %1 %2 %3 %4 %5 %6 %7 %8 %9 > temp.txt notepad temp.txt
archimeta-ru-kryg-2012-04-03-13-04.mp4#magnet:?xt=urn:ed2k:e803fe1127ad3cd20bc335bbd17c6c8b&xl=947346&dn=archimeta-ru-kryg-2012-04-03-13-04.mp4&xt=urn:tree:tiger:tm6z5ohogst2qsmbq2awl7dz4niz2dokzawz5jq&xt=urn:btih:884162be8064f3bf10e524a0b03fc0e3e796c56f
また、 Shareazaはテンプレートに従ってマグネットを作成できます(ファイルが既に共有されている場合、2度目に処理する必要はありません)。
ファイルに磁石を個別に与えることも可能ですが、スクリプトで磁石を分離する方が良いでしょう。 したがって、磁石はリソースにしっかりと接続されており、これが1つのファイルであることは明らかです。 これにより、起動プロセスがさらに自動化されます。 マグネットでは、サーバー上のファイルへの直接リンクを指定することもできます(ファイルへのWebリンク(as、xs)を参照)。
おそらく、ビデオページを初めて開くと、ビデオファイル自体はまだディスク上に存在せず、ダウンロードするだけで済みます。 したがって、videoタグのpreloadプロパティでnoneを設定し、posterプロパティで、ビデオのフレームまたは他のコンテンツのデータURLを挿入して空のスペースを埋めます。
実際、ソースタグでは、結合された磁石をmp4、webm、ogvの順に記述します。
<video id="movie" width="640" height="480" preload="none" controls="controls" poster="data:image/jpeg;base64,/9j/4AAQSkZJRgA..."> <source src="archimeta-ru-kryg-2012-04-03-13-04.mp4#magnet:?xt=urn:ed2k:e803fe1127ad3cd20bc335bbd17c6c8b&xl=947346&dn=archimeta-ru-kryg-2012-04-03-13-04.mp4&xt=urn:tree:tiger:tm6z5ohogst2qsmbq2awl7dz4niz2dokzawz5jq&xt=urn:btih:884162be8064f3bf10e524a0b03fc0e3e796c56f&as=http://derevo.archimeta.ru/video/kryg/kryg.mp4" /> <source src="archimeta-ru-kryg-2012-04-03-13-04.webm#magnet:?xt=urn:ed2k:bba8e1f790f667ac53403cd5d8797edb&xl=1107873&dn=archimeta-ru-kryg-2012-04-03-13-04.webm&xt=urn:tree:tiger:ffmycgrdaxsnvtg4oqdpg5nmesjvlo5xkgg3qdq&xt=urn:btih:870d0cf99445258193947d055674efc5fe2bbb67&as=http://derevo.archimeta.ru/video/kryg/kryg.webm" type='video/webm; codecs="vp8, vorbis"' /> <source src="archimeta-ru-kryg-2012-04-03-13-04.ogv#magnet:?xt=urn:ed2k:a44f88787b879fa3b0b6493509e989f9&xl=1792810&dn=archimeta-ru-kryg-2012-04-03-13-04.ogv&xt=urn:tree:tiger:5tvhqhlv4rj7mss4kzwkmc4ujn43uz26vlbdhjq&xt=urn:btih:787ef1f3dedc36dfbf20f0d1e946be5b4b1ee580&as=http://derevo.archimeta.ru/video/kryg/kryg.ogv" type='video/ogg; codecs="theora, vorbis"' /> </video>
p2p Webページの準備ができたら、同じ方法で結合磁石を作成して公開します。 当然、外部リソースで公開する場合、マグネットのみを使用するのが理にかなっています。
ページとリソースを取得するには、p2pネットワークで共有する必要があることを忘れないでください。 現時点では、 Shareazaクライアントはこれに適しています。 複数のネットワークをサポートします。
さて、今、記事の第2部を終了する時が来たと思います。
例付きのこの記事。
マグネットインターネット1-マグネット
Magnet Internet 2-ハイパーテキスト
Magnet Internet 3-P2Pウェブサイトおよびフォーラム
Magnet Internet 4-マグネットをパーツに分割する
Magnet Internet 5-ビーコンとメッセージ(個人、公開、更新)