Katakanlah saya memiliki halaman web sederhana dengan gambar svg di dalamnya:
<img src="foobar.svg" alt="not working" />
Jika saya membuat halaman ini sebagai halaman html statis dan melihatnya langsung svg ditampilkan. Jika saya mengetik alamat svg ini - ini ditampilkan.
Tetapi ketika saya menjadikan ini sebagai halaman .aspx dan meluncurkannya secara dinamis dari Visual Studio, saya mendapatkan alt
teks. Jika saya mengetik alamat svg ini (dari localhost, bukan sebagai file lokal) - browser mencoba mengunduhnya daripada menampilkan.
Saya sudah mendefinisikan tipe mime di IIS (untuk seluruh server - "image / svg + xml") dan memulai kembali IIS. Efek yang sama seperti sebelumnya.
Pertanyaan: apa yang harus saya lakukan lebih banyak?
Memperbarui
WireShark tidak akan berfungsi (ini dalam dokumentasi), saya juga mencoba RawCap, tetapi tidak dapat melacak koneksi saya (aneh), untungnya Fiddler bekerja:
Dari klien:
GET http://127.0.0.1:1731/svg/document_edit.svg HTTP/1.1
Host: 127.0.0.1:1731
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:10.0.1) Gecko/20100101 Firefox/10.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Jawaban dari server:
HTTP/1.1 200 OK
Server: ASP.NET Development Server/10.0.0.0
Date: Thu, 16 Feb 2012 11:14:38 GMT
X-AspNet-Version: 4.0.30319
Cache-Control: private
Content-Type: application/octet-stream
Content-Length: 87924
Connection: Close
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:
*** FIDDLER: RawDisplay truncated at 128 characters. Right-click to disable truncation. ***
Sebagai catatan, inilah Q&A yang berguna untuk Fiddler: /programming/826134/how-to-display-localhost-traffic-in-fiddler-while-debugging-an-asp-net-applicati
<img src...
seperti yang ditunjukkan di atas, aspx "diterjemahkan" ke halaman html penuh, tetapi pengiriman seluruh konten (html, dan kemudian svg) dilakukan oleh IIS.