Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc MVC-从“加载”页面上的图像;缩短的;我的域上的代码(就像Bit.ly对链接所做的那样)_Asp.net Mvc_Http_Razor_Url Shortener - Fatal编程技术网

Asp.net mvc MVC-从“加载”页面上的图像;缩短的;我的域上的代码(就像Bit.ly对链接所做的那样)

Asp.net mvc MVC-从“加载”页面上的图像;缩短的;我的域上的代码(就像Bit.ly对链接所做的那样),asp.net-mvc,http,razor,url-shortener,Asp.net Mvc,Http,Razor,Url Shortener,其中example.com是我的站点,Show是图像控制器中的一个方法,唯一id CwYDBw8LDww是数据库中的一个键,它将指向不同域上的其他URL,例如Google上的“托管”图像 这样做的原因是URL可能变得非常长和笨拙。我将网站内容存储为Markdown/HTML,并希望能够编写以下内容: <p>Here is an image of a cat.</p> <img src="http://example.com/Image/Show/CwYDBw

其中example.com是我的站点,Show是图像控制器中的一个方法,唯一id CwYDBw8LDww是数据库中的一个键,它将指向不同域上的其他URL,例如Google上的“托管”图像

这样做的原因是URL可能变得非常长和笨拙。我将网站内容存储为Markdown/HTML,并希望能够编写以下内容:

<p>Here is an image of a cat.</p>    
<img src="http://example.com/Image/Show/CwYDBw8LDww"> 

在内容已存储为
的地方,这里有一张猫的图像

等。

我自己耐心地研究解决了它!我在图像控制器中添加了以下内容

public RedirectResult Show(string shortcode)
{
    return Redirect(data.GetURL(shortcode));
}
其中GetURL()是我的数据访问层中的一个方法,它向数据库请求应用于短代码的“长”URL。(我会处理这样的情况,比如短代码在
GetURL()
代码中不存在,所以
Show()
假定它已经被赋予了一个有效的URL。)

这将返回302“临时重定向”HTTP响应,以将客户端重新指向“新”(在我的示例中为Google)URL


这有助于我获得所需的概念。

我自己已经回答了这个问题,因为我现在已经开始工作了。我一直认为它是一个嵌入网页的“图像”,而不是“顶层”的页面重定向,即浏览器在地址栏中显示的页面等。一旦我后退一步,意识到HTTP请求实际上只是一个请求,无论响应的“类型”如何,我都解决了它。
@Html.Raw(@Model.ArticleContent)
public RedirectResult Show(string shortcode)
{
    return Redirect(data.GetURL(shortcode));
}