我的编程空间,编程开发者的网络收藏夹
学习永远不晚

ASP.NET页面的aspx扩展方法是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

ASP.NET页面的aspx扩展方法是什么

这篇文章主要讲解了“ASP.NET页面的aspx扩展方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.NET页面的aspx扩展方法是什么”吧!

需求:某网站因业务扩展,需拆分出另一个站点,新旧站点具有相同的内容,但具体栏目表现形式上不一样。原网站运行多年,有大量的图片,这些图片也会在新站上使用。任务是:

保证两个网站图片内容同步,即原来的站点增加一个图片,新站点即可使用这个图片。

分析:假设两个站点的域名分别为:http://www.a_image.com/和http://www.b_image.com/

将图片分别拷到两台服务器,以后上传图片同时上传两台服务器。这种方法虽简单,但是占用巨大的磁盘空间,而且维护麻烦。

在http://www.b_image.com/的页面上直接写https://file.lsjlt.com/upload/202306/14/y5cpogygu3t.jpg资源请求的处理句柄:

<httphandlers>  <add verb=”*” path=”*.jpg” type=”HandlerTest”/>  </httphandlers>

Verb列表可以是逗号分隔的HTTP谓词列表(例如“GET,PUT,POST”),也可以是通配符“*”;path路径属性可以包含单个URL路径或简单的通配符字符串(例如*.aspx);type指定逗号分隔的类/程序集组合。ASP.NET首先在应用程序的专用\bin目录中搜索程序集DLL,然后在系统程序集缓存中搜索程序集DLL。
从代码层面来看,要实现自定义的HTTP处理句柄,只需要实现一个IhttpHandler接口,其中包括IsReusable和ProcessRequest两个方法。IsReusable方法用于返回应用程序池中是否存在可重用的类实体的信息,利用这个方法可以同时为多个请求服务,而ProcessRequest方法则接受一个HttpContext实体作为参数,从而得到对Request和Response的存取权限。

处理思路:当对www.b_image.com/images/book.jpg的请求到达IIS时,ASP.NET初始化一个图像生成器类,在这个类中,通过HTTP端口把www.a_image.com/images/book.jpg取回来,再将图像流返回到HTTP响应中。接收并处理HTTP请求是在ProcessRequest方法中完成的。客户端并不知道实际发生了什么事情。

代码:

using System;  using System.Net;  using System.IO;  using System.Web;  using System.Drawing;  using System.Drawing.Imaging;   namespace WebHttpModule  {      public class ImageLink : IHttpHandler      {          public void ProcessRequest(HttpContext context)          {              string url = context.Request.Url.ToString();              //if request is http://www.b_image.com/, then changed to request http://www.a_image.com/              urlurl = url.Replace("http://www.b_image.com/", "http://www.a_image.com/");               //如果使用的相对路径,就要手工加入完整的url路径              if (url.IndexOf("http://www.a_image.com/") <= 0)              {                  url = "http://www.a_image.com/" + url;              }               //create one WebClient object, used to request the image of https://file.lsjlt.com/upload/202306/14/opefahp53jh.Jpeg);               image.Dispose();          }           public bool IsReusable          {              get              {                  return true;              }          }      }  }

配置:

将上面的代码编译为ImageLink.dll,在b服务器建立和a机器相同路径的图片目录images,并在其下建立bin目录,将ImageLink.dll拷进去,在b服务器中吧images目录设定为一个应用程序,这样才能针对此应用程序设定相应的程序映射(添加相应的扩展),以把jpg后缀的请求发送到ASP.NET去处理。

在Web.Config中配置代码来设定httpHandlers,我们现在要做的把对images目录下的jpg文件的请求转到ImageLink来处理,因此最终的设定如下:

<httphandlers> <add verb=”*” path=”images/*.jpg” type=” WebHttpModule.ImageLink, ImageLink”/> </httphandlers>

将web.config拷到images目录下。

到此大工就告成了!所有对b服务器请求的jpg图片都会从a机器取到,在客户端却看不出来。

感谢各位的阅读,以上就是“ASP.NET页面的aspx扩展方法是什么”的内容了,经过本文的学习后,相信大家对ASP.NET页面的aspx扩展方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

ASP.NET页面的aspx扩展方法是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

ASP.NET页面的aspx扩展方法是什么

这篇文章主要讲解了“ASP.NET页面的aspx扩展方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.NET页面的aspx扩展方法是什么”吧!需求:某网站因业务扩展,需拆分出另
2023-06-17

ASP.NET Core扩展库的功能是什么

本篇内容介绍了“ASP.NET Core扩展库的功能是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!亲爱的.Neter们,在我们日复一日
2023-06-09

Zookeeper扩展的方法是什么

这篇文章主要介绍“Zookeeper扩展的方法是什么”,在日常操作中,相信很多人在Zookeeper扩展的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Zookeeper扩展的方法是什么”的疑惑有所
2023-06-05

在SQL Server中什么是页面和扩展

在SQL Server中,页面是一种存储数据和索引的基本单元。每个页面有固定的大小,通常为8KB。SQL Server使用页面来存储表数据、索引数据、临时对象等。扩展是SQL Server中用于管理存储空间的逻辑结构。每个扩展包含8个连续
在SQL Server中什么是页面和扩展
2024-06-03

Linq扩展方法是什么

这篇文章主要讲解了“Linq扩展方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linq扩展方法是什么”吧!LINQ使查询成为了.NET中头等的编程概念,被查询的数据可以是XML(L
2023-06-17

ASP.NET页面间数据传递的方法是什么

这篇文章主要讲解了“ASP.NET页面间数据传递的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.NET页面间数据传递的方法是什么”吧!Web页面是无状态的,服务器对每一次请
2023-06-17

Java2 HTML扩展方法是什么

本文小编为大家详细介绍“Java2 HTML扩展方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java2 HTML扩展方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。打开Java2htmlta
2023-06-03

VB.NET扩展方法的概念是什么

今天就跟大家聊聊有关VB.NET扩展方法的概念是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。VB.NET编程语言的出现,在开发领域中起了很大的作用。它从出现至今,已经发展了各种
2023-06-17

mysql水平扩展的方法是什么

MySQL水平扩展的方法包括以下几种:分区(Partitioning):将大表拆分成多个小表,每个小表称为一个分区,可以根据某个列的值进行分区,提高查询性能。分区还可以将数据存储在不同的磁盘上,提高数据读写的并发性能。分库分表(Shard
2023-10-27

php扩展编写的方法是什么

编写 PHP 扩展的方法通常有以下几个步骤:1. 确定扩展的功能:首先确定要扩展的功能,即需要为 PHP 提供哪些新的功能或功能增强。2. 创建扩展的源代码文件:在 PHP 的源代码目录中创建一个新的目录,并在其中创建扩展的源代码文件。通常
2023-08-11

java swing控件扩展的方法是什么

Java Swing控件的扩展方法有以下几种:1. 继承基本控件:可以通过继承JButton、JLabel、JTextField等基本控件来创建自定义控件,并在其中添加额外的功能。2. 组合控件:可以通过将多个基本控件组合在一起,形成一个新
2023-08-26

plsql扩展表空间的方法是什么

在PL/SQL中,可以通过以下方法来扩展表空间:使用ALTER TABLESPACE命令:可以使用ALTER TABLESPACE命令来增加表空间的大小。语法如下:ALTER TABLESPACE tablespace_nameADD
2023-10-22

Linux swap的扩展和删除方法是什么

本篇内容介绍了“Linux swap的扩展和删除方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!wap space是磁盘上的一块区域
2023-06-27

redis扩展编译安装的方法是什么

要在Redis中安装扩展,你可以按照以下步骤进行编译和安装:1. 下载扩展的源代码。你可以从扩展的官方网站或GitHub存储库中获取源代码。2. 解压源代码文件。3. 进入解压后的源代码目录。4. 运行`make`命令编译扩展。5. 运行`
2023-09-11

Java缺失的特性扩展方法是什么

今天小编给大家分享一下Java缺失的特性扩展方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。什么是扩展方法扩展方法,
2023-07-05

php获取url扩展名的几种方法是什么

获取方法:1、用“substr(strrchr($url,"."),1)”语句;2、用“substr($url,strrpos($url,'.')+1)”语句;3、用“pathinfo($url,PATHINFO_EXTENSION)”。
2014-10-06

element plus样式修改和扩展的方法是什么

这篇文章主要介绍了element plus样式修改和扩展的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇element plus样式修改和扩展的方法是什么文章都会有所收获,下面我们一起来看看吧。一、用
2023-07-05

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录