2017-05-08 32 views
0

私はHttpClientを使用してHTML文字列を取得し、このページを表示するためにWebViewのnavigateToStringメソッドを使用しています。私はWebViewでこのページを直接読み込むことができますが、WebViewに表示される前にそのページで何らかの処理をする必要があります。WebViewで相対ソースを読み込む方法

私は質問に直面しました。ウェブページはヘッダ内のいくつかのcss/jsファイルを引用していますが、 'href'の値は相対パスです。 WebViewでページが正しく表示されません。

[更新] たとえば、HttpClientを使用してURI(http://example.com)をリクエストすると、HTMLページの文字列全体が取得されます。このhtml文字列でいくつかの操作を行います。その後、WebView.NavigateToString(htmlpage)メソッドを使用してこのページを表示します。しかし、headタグをチェックすると、<link>というタグがあり、hrefの値は絶対パスではなく相対パス(/style-a/1.css)です。次に、htmlページがWebViewで正しく表示されないことがわかります。

誰かが私にソリューション/コードサンプルを教えてもらえますか?

@Pedro Lamas、rene、Barett、moi_meme、Shachaf.Gortler私の質問を保留にしないでください。私はどんなSOのルールも破っていませんでした。私の質問は非常に明確でした。私はあなたがこれを行うと思う、それはあなたが私の質問に答える方法を知らないからだ。それで大丈夫です。あなたがわからない場合、あなたはそれに答えることを選択することができますが、それを保留にしないでください。

+1

私はそれがNavigateToString方法で可能だか分かりません。ただし、NavigateToLocalStreamUriメソッドがあり、ページ上のすべての相対リンクに対して独自のリゾルバを提供できます。 –

答えて

0

あなたはms-appx-web://であなたのリンクやスクリプトタグのアドレスを設定し、追加[/]とその後のアドレスを置くことができます。

<script src="ms-appx-web:///Assets/FolderName/test.js" type="text/javascript"></script> 

をしても、リンクのために使用することができます:

この場合、たとえば、あなたが使用することができます

<link rel="stylesheet" type="text/css" href="ms-appx-web:///style-a/1.css"> 
関連する問題