【发布时间】:2011-04-21 21:10:01
【问题描述】:
******基于 cmets 将帖子编辑为更新的代码示例*******
所以,明确地说,我有两个文件。第一个文件称为 FinalImage.aspx,下面是该页面的代码:
<html>
<body>
<img src="newpage.aspx" />
</body>
</html>
newpage.aspx 有以下代码,基于 Jason 在下面 cmets 中的示例:
<%@ Page Language="C#" %>
<script runat="server" language="c#">
protected void Page_Load(object sender, EventArgs e)
{
Response.ContentType = "image/png";
byte[] data = System.IO.File.ReadAllBytes("http://mystatus.skype.com/smallclassic/eric-greenberg");
Response.OutputStream.Write(data, 0, data.Length);
Response.OutputStream.Flush();
Response.End();
}
</script>
如果我调用 FinalImage.aspx,我会看到损坏的图像。
如果我直接调用 newpage.aspx,我会收到“不支持 URI 格式错误”
不过,我认为它已经接近了。
此外,对于刚刚阅读此内容的任何人,都需要此解决方案来解决以下事实:Skype 的 Skype 按钮没有 https 选项来告知 Skype 用户的状态。创建此代理页面将使其正常工作,而不会在浏览器中引起“混合”安全警报。
【问题讨论】:
-
我不认为
File.ReadAllBytes支持URI 格式,它只适用于本地文件。您需要创建一个 WebRequest 并下载字节。