私は異なるURLから画像を取得するためにasp:imageフィールドを使用しています。 imageurlを使ってリモートウェブサイト(例:http://www.google.com/favicon.ico)からイメージ文字列を設定すると、イメージが存在するかどうかをどのように確認できますか?画像のUrlが有効であることを意味します。asp:画像表示画像
0
A
答えて
0
Uri.TryCreate methodを使用してURIが有効かどうかを検証できます。
イメージがASP.Netアプリケーションに存在するかどうかを確認しないでください。画像をダウンロードするのはブラウザの仕事です。 this questionで説明されているように、javascriptを追加すると、ブラウザが欠落している画像をデフォルト画像に置き換えることができます。
0
これは、asp:Imageコントロールだけを使用して行うことはできません。しかし、少し余分な作業があれば、ASHXハンドラを使用して、イメージ(例えば、クエースリング上のイメージを使用)にプログラム的にHttpRequest
を作ることは可能です。 HttpRequest
が成功した場合、イメージをレスポンスにストリームすることができます。
HttpRequest
が404ステータスを返す場合は、代わりに別の定義済みイメージを送信できます。
しかし、これはナットをクラックさせるようなものであり、サイト全体に広範囲に使用しないでください。重大な負荷がかかる可能性があります。ユーザーのブラウザではなくサーバーにダウンロードを依頼しています。画像。また、慎重に実装されていないと、XSSの潜在的なセキュリティリスクになる可能性があります。
具体的には、実際に要求されたイメージをローカルに保持する必要がある場合は特にそうです。要求されたすべてのイメージは、将来の要求が以前に保持されたイメージに役立つようにディスクに書き込まれる必要があります。
明らかに、Javascriptも解決策ですが、私は上記のことを要件に応じて考えています。
0
class MyClient : WebClient
{
public bool HeadOnly { get; set; }
protected override WebRequest GetWebRequest(Uri address)
{
WebRequest req = base.GetWebRequest(address);
if (HeadOnly && req.Method == "GET")
{
req.Method = "HEAD";
}
return req;
}
}
private bool headOnly;
public bool HeadOnly {
get {return headOnly;}
set {headOnly = value;}
}
using(var client = new MyClient()) {
client.HeadOnly = true;
// fine, no content downloaded
string s1 = client.DownloadString("http://google.com");
// throws 404
string s2 = client.DownloadString("http://google.com/silly");
}
これを試してみてください!
関連する問題
- 1. 画像表示の画像を表示
- 2. td背景画像asp:画像可能?
- 3. 画像表示
- 4. 表示画像
- 5. 表示画像
- 6. 表示画像
- 7. 表示画像
- 8. 画像表示
- 9. 表示画像
- 10. Jquery画像スライドショー画像のランダム表示
- 11. MigraDoc画像を画像上に表示
- 12. 画像ビューアにアンドロイド表示画像
- 13. 画像をギャラリーに表示アセット/画像
- 14. 表示画像アップロード
- 15. 画像表示が
- 16. Angular2 - 表示画像
- 17. ランダム画像表示
- 18. php表示画像
- 19. Zend表示画像
- 20. Androidの画像が画像表示に表示されない
- 21. オン・クリック画像表示表
- 22. ASP。 NET MVC 5画像ルーティング
- 23. ASPでの画像アップロードエラーMVC
- 24. Asp:リンク先の画像
- 25. ASP classicのbase64画像デコーダ
- 26. asp画像ボタンクリックイベントJQuery Mobile
- 27. Asp画像ボタンOnClientClick javascript(id)
- 28. Web画像のダウンロードと画像ビューに表示するWeb画像
- 29. 画像が画像ホルダーにアップロードされるまでデフォルト画像を表示
- 30. img ASPコントロールで画像を表示するには?