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

柳州企业网站制作微信公众号 网站开发 2016

柳州企业网站制作,微信公众号 网站开发 2016,成都优化网站哪家公司好,湖南建设银行网站是多少场景 最近笔者在研究web框架过程中#xff0c;发现了一个响应类型的问题#xff0c;困扰许久#xff0c;原因就是设置了响应状态码后#xff0c;然后设置响应类型为application/json。在实际请求后#xff0c;响应类型变成了text/plain; charsetutf-8格式。 问题解决发现了一个响应类型的问题困扰许久原因就是设置了响应状态码后然后设置响应类型为application/json。在实际请求后响应类型变成了text/plain; charsetutf-8格式。 问题解决 先设置请求头的Content-type属性再设置响应状态码即可解决问题 // 例如 func writeContentType(w http.ResponseWriter) {header : w.Header()if val : header[Content-Type]; len(val) 0 {header[Content-Type] []string{application/json; charsetutf-8}} } // 先执行 writeContentType(w) // 再执行 w.WriteHeader(code)分析导致问题的原因 我们处理请求接收的参数是http.ResponseWriter类型的它是一个接口类型只要实现了这个接口都可以作为参数传递进来。 而实际传递进来的是response结构体它实现了http.ResponseWriter接口 可以通过定位http.ResponseWriter结构体在同文件里面找到response结构体 我们查看一下response结构体的WriteHeader方法的源码里面有一段代码 func (w *response) WriteHeader(code int) {// 忽略代码if w.calledHeader w.cw.header nil {w.cw.header w.handlerHeader.Clone()}// 忽略代码 } 再看一下response结构体的Header方法因为我们实际就是调用它然后设置响应头的 func (w *response) Header() Header {if w.cw.header nil w.wroteHeader !w.cw.wroteHeader {w.cw.header w.handlerHeader.Clone()}w.calledHeader truereturn w.handlerHeader }总结问题 通过分析上面两组代码可以发现如果我们先执行了WriteHeader方法它会给w.cw.header设置值此时我们再调用Header方法设置Content-type属性时经过if判断w.cw.header并不等于nil了所以我们给header设置的属性无法设置到w.cw.header上面导致实际响应时content-type发生变化。关键点就在于w.cw.header这个字段如果设置的属性没到它上面的话会导致失效。
http://www.pierceye.com/news/683415/

相关文章:

  • 网站建设项目怎么写新网站一般多久收录
  • 什么网站可以免费发广告合肥做网站一般多少钱
  • 企业网站优化的方式大安市网站
  • 镇江专业网站建设制作wordpress调查插件
  • 桂林网站制作多少钱最好的网站开发公司
  • 广州网站开发公司排名广州从化建设网站官网
  • 网站备案在杭州注册公司需要什么条件
  • 购买域名做销售网站可以吗河北邢台刚刚发布的紧急通知
  • 安溪建设局网站政务网站建设信息
  • 如何做公司自己的网站首页网站建设的钱计入什么科目
  • 网站建设公司行业免费下载网站模版
  • 海外做淘宝网站网站有关于我们的好处
  • 给别人做网站挣钱吗怎么建设推广网站
  • 南宁市网站开发深圳制作app
  • 临海大经建设集团网站雄安做网站
  • 网站设计多少钱通桥小学的网站建设
  • 上海制作网站的公司做彩票网站违法吗
  • ps软件手机版下载百度seo工具
  • 新乡网站关键词优化建设局网站信息管理制度
  • 海南论坛网站建设网站建设怎么放到云空间
  • 中山 灯饰 骏域网站建设专家网站建设需求范文
  • 东光网站建设淘宝店铺装修苏州网站建设服务
  • 平台型网站建设预算表哈尔滨网站制作多少钱
  • 手机网站焦点图装修房子的流程和顺序
  • 做网站一个月赚多少和一起做网店类似的网站
  • 网站的栏目有什么名字中文网站建设技术解决方案
  • wordpress首页非常慢网站优化推广seo
  • 成都建设银行网站北京建设工程招标网
  • 国美电器网上商城给网站做seo的必要性
  • 网站制作公司资质dw网页设计的一般步骤