当前位置: 首页 > news >正文

遇到一个很诡异的问题,求解答

      今天在接口对接中,遇到一个很诡异的问题,百思不得其解,问了我身边的同事和高手,他们都表示没见过此问题,我也不知道应该怎么去百度这个问题,下面我就大致描述一下这个问题,希望看到我的文章的大神们能给我一些指点。一起学习与进步!

      问题是这样的,我使用的技术平台ASP.NET,以前的一个接口页面,把用到的代码都写在.cs的文件中,所以前台的代码保存住原来程序自动生成的代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="UnionCompanyInterface.aspx.cs" Inherits="UnionCompany_UnionCompanyInterface" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>

</div>
</form>

</body>
</html>

由于后台的代码需要显示的值,直接就用Response.Write()出来了,我觉得那些代码冗余了,所以我就把那些不必要的代码都删了,之剩下这一条代码在.aspx页面上:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="UnionCompanyInterface.aspx.cs" Inherits="UnionCompany_UnionCompanyInterface" %>

然后,重点来了,我复制原来的接口地址:

http://www.xxx.com/UnionCompanyInterface.aspx?user=%e6%b5%8b%e8%af%95&cid=T123

粘贴到浏览器中,一回车!codeid后面的这个“T123”的值居然自动变成了小写的“t123”

我就纳闷了,这到底是怎么一回事,查了查后台代码,没有转换小写的语句啊,再说了,转换小写也不可能是在url上自动换啊。

然后我在已经回车后的地址栏上,手动把小写的t改成大写的T,回车!居然接口显示正常了!!cid又等于T123了,我真是想不通。。。

 

最后,我想了想,是不是那些删除过后的代码搞的鬼,于是把文件给还原,接着再贴一遍接口地址到地址栏,回车,接口正常显示!cid的值不会变成小写的t123了。哦!!终于找到事情的真凶,原来真是他们搞的鬼。

 

我百度了一下他们的资料(可略读):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
声明了文档的根元素是 html,它在公共标识符被定义为 "-//W3C//DTD XHTML 1.0 Transitional//EN" 的 DTD 中进行了定义。浏览器将明白如何寻找匹配此公共标识符的 DTD。如果找不到,浏览器将使用公共标识符后面的 URL 作为寻找 DTD 的位置

DOCTYPE是document type(文档类型)的简写,在web设计中用来说明你用的XHTML或者HTML是什么版本。
要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。

DOCTYPE是document type(文档类型)的简写,用来说明你用的XHTML或者HTML是什么版本。

其中的DTD(例如上例中的xhtml1-transitional.dtd)叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。

XHTML 1.0 提供了三种DTD声明可供选择:

* 过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法),完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

* 严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性,例如<br>,完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

* 框架的(Frameset):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD,完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

 

查了以上的资料,我觉得与我遇到的问题,关系不是很大,可能我还没找到问题的核心。现在还是很纳闷,目前还不能确切的找到相应很好的解答,希望看了我文章的人,能帮我解决这个困扰我的问题。作为一个初学者身份的我,很虚心接受每个人给我的解答与帮助,也感谢所有帮助过我的人,好人一生平安!


转载于:https://www.cnblogs.com/yangyy753/archive/2011/11/15/2250088.html

相关文章:

  • 高度图构造地形
  • Oracle SQL的优化规则
  • 【转】FLASH Player 11.2 BETA 鼠标新特性初探及api配置
  • Poj1180 Batch Scheduling --- DP的斜率优化
  • 把成熟的代码从.NET移植到Mono 【转】
  • 使用rsync+inotify做双机实时互备
  • Xen Desktop测试报告
  • 减速机行业“十二五”标准化战略
  • 超声(PDUS)能否容易检出侵蚀?比较PDUS与microCT对正常人群和RA患者小关节生理和皮质断裂的评价...
  • [原创]一些Ubuntu的代理设置
  • Active Directory系列之七:Active Directory的脱机碎片整理
  • 分析师:苹果第4季度将销售3000万部iPhone
  • Boost asio 心得笔记
  • 我的2011
  • 如何与非同盟组织分享日历
  • php的引用
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • Java 最常见的 200+ 面试题:面试必备
  • JavaScript学习总结——原型
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • js作用域和this的理解
  • oldjun 检测网站的经验
  • React+TypeScript入门
  • SpringBoot 实战 (三) | 配置文件详解
  • Spring声明式事务管理之一:五大属性分析
  • Transformer-XL: Unleashing the Potential of Attention Models
  • vue自定义指令实现v-tap插件
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 从零搭建Koa2 Server
  • 复杂数据处理
  • 基于Dubbo+ZooKeeper的分布式服务的实现
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 开源SQL-on-Hadoop系统一览
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 微信开放平台全网发布【失败】的几点排查方法
  • 小程序01:wepy框架整合iview webapp UI
  • 再谈express与koa的对比
  • 责任链模式的两种实现
  • 主流的CSS水平和垂直居中技术大全
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (已解决)报错:Could not load the Qt platform plugin “xcb“
  • (转) ns2/nam与nam实现相关的文件
  • *++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
  • .“空心村”成因分析及解决对策122344
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .Net Web窗口页属性
  • .NET 动态调用WebService + WSE + UsernameToken