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

技术支持 东莞网站建设母婴护理网络营销的概念及内容

技术支持 东莞网站建设母婴护理,网络营销的概念及内容,建设通app官网下载安装,网站建设首选公司这里我的业务场景是:在请求头中获取服务端登录时传给客户端的token,并且客户端将token放在请求头中。以至于我需要在参数传递上传入HttpServletRequest。如果你非要向我一样传入HttpServletRequest对象那么就往下看,当然你如果可以改成其他参…

        这里我的业务场景是:在请求头中获取服务端登录时传给客户端的token,并且客户端将token放在请求头中。以至于我需要在参数传递上传入HttpServletRequest。如果你非要向我一样传入HttpServletRequest对象那么就往下看,当然你如果可以改成其他参数传递就不需要往下看了。

使用Feign所需要的必需知识别忘记:

1、需要在调用方以及被调用方以及Feign接口模块引入依赖

2、被调用方与调用方的主启动类均需要加上@EnableFeignClients注解

3、被调用方的注解后面还需要加扫描路径,对于我本人项目则是@EnableFeignClients(basePackages = "com.chf")

4、被调用方的控制层(Controller)的方法需要是public。因为写在Feign接口中的方法就是默认的public static final。所以说两个的访问权限修饰符必须是一致的。

5、将被调用方的方法copy到Feign接口中,这里需要注意三点:

一、在@RequestMapper/REST风格的请求路径中需要被调用方的全路径名

二、Feign接口需要两个注解:@Component以及@FeignClient

三、@FeignClient注解中需要加上被调用方的服务名称("spring:application:name")

feign.codec.EncodeException: Could not write JSON: getInputStream() has already been called for this request; nested exception is com.fasterxml.jackson.databind.JsonMappingException: getInputStream() has already been called for this request (through reference chain: org.apache.catalina.connector.RequestFacade["reader"])at feign.ReflectiveFeign$BuildEncodedTemplateFromArgs.resolve(ReflectiveFeign.java:376)at feign.ReflectiveFeign$BuildTemplateByResolvingArgs.create(ReflectiveFeign.java:224)at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:75)at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:103)at com.sun.proxy.$Proxy81.concertCount(Unknown Source)at com.chf.service.impl.ApiEChartsServiceImpl.ticketCount(ApiEChartsServiceImpl.java:25)at com.chf.controller.api.ApiEChartsController.ticketCount(ApiEChartsController.java:25)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:888)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793)at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:526)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1579)at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)at java.lang.Thread.run(Thread.java:748)
Caused by: org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: getInputStream() has already been called for this request; nested exception is com.fasterxml.jackson.databind.JsonMappingException: getInputStream() has already been called for this request (through reference chain: org.apache.catalina.connector.RequestFacade["reader"])at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.writeInternal(AbstractJackson2HttpMessageConverter.java:296)at org.springframework.http.converter.AbstractGenericHttpMessageConverter.writeInternal(AbstractGenericHttpMessageConverter.java:113)at org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:227)at org.springframework.cloud.openfeign.support.SpringEncoder.encode(SpringEncoder.java:114)at feign.ReflectiveFeign$BuildEncodedTemplateFromArgs.resolve(ReflectiveFeign.java:372)... 56 more
Caused by: com.fasterxml.jackson.databind.JsonMappingException: getInputStream() has already been called for this request (through reference chain: org.apache.catalina.connector.RequestFacade["reader"])at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:394)at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:353)at com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:316)at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:729)at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:166)at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:480)at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:319)at com.fasterxml.jackson.databind.ObjectWriter$Prefetch.serialize(ObjectWriter.java:1433)at com.fasterxml.jackson.databind.ObjectWriter.writeValue(ObjectWriter.java:921)at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.writeInternal(AbstractJackson2HttpMessageConverter.java:287)... 60 more
Caused by: java.lang.IllegalStateException: getInputStream() has already been called for this requestat org.apache.catalina.connector.Request.getReader(Request.java:1208)at org.apache.catalina.connector.RequestFacade.getReader(RequestFacade.java:504)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:688)at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:721)... 66 more

        报这个错误的原因主要是:Feign没有接受HttpServletRequest参数。以下三点是处理这个问题的解决办法。第一:在Feign模块中写一个配置类实现RequestInterceptor重写apply()方法。

二、修改Feign接口中的两处地方。三、在调用方调用Feign接口地方改为请求头中的参数。

@Component
public class FeignConfig implements RequestInterceptor {@Overridepublic void apply(RequestTemplate requestTemplate) {ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();HttpServletRequest request = attributes.getRequest();requestTemplate.header("token",request.getHeader("token"));}
}
@Component
// 第一处更改的位置:加上configuration
@FeignClient(value = "service:application:name",configuration = FeignConfig.class)
public interface FeignClient {@GetMapping("全路径名")// 第二处更改的位置:加上@RequestHeader注解并且带上需要的请求头类型Integer count(@RequestHeader("token") String token);
}
@Service
public class AServiceImpl implements AService {@Autowiredprivate FeignClient feignClient;@Overridepublic Integer personCount(HttpServletRequest request) {String token = request.getHeader("token");return feignClient.count(token);}
}


文章转载自:
http://dinncogambade.ssfq.cn
http://dinncotrimorphous.ssfq.cn
http://dinncoelectrical.ssfq.cn
http://dinncobouncing.ssfq.cn
http://dinncohonan.ssfq.cn
http://dinncohygeian.ssfq.cn
http://dinncoindividual.ssfq.cn
http://dinncoabattoir.ssfq.cn
http://dinncoamdg.ssfq.cn
http://dinncospeedwalk.ssfq.cn
http://dinncobobbish.ssfq.cn
http://dinncodeconstruction.ssfq.cn
http://dinncowatchful.ssfq.cn
http://dinncodesquamate.ssfq.cn
http://dinncoparahydrogen.ssfq.cn
http://dinncouseucom.ssfq.cn
http://dinncocalcimine.ssfq.cn
http://dinncodustpan.ssfq.cn
http://dinncofrankhearted.ssfq.cn
http://dinncoacceptee.ssfq.cn
http://dinncomanama.ssfq.cn
http://dinncononlicet.ssfq.cn
http://dinncostrongylosis.ssfq.cn
http://dinncodominative.ssfq.cn
http://dinncotoeshoe.ssfq.cn
http://dinncoheterology.ssfq.cn
http://dinncomethotrexate.ssfq.cn
http://dinncochervil.ssfq.cn
http://dinncodestitution.ssfq.cn
http://dinncocooly.ssfq.cn
http://dinncohydria.ssfq.cn
http://dinncoundertrick.ssfq.cn
http://dinncostripling.ssfq.cn
http://dinncostrumae.ssfq.cn
http://dinncoingenuously.ssfq.cn
http://dinncopolyclonal.ssfq.cn
http://dinncouniversally.ssfq.cn
http://dinncoinoculation.ssfq.cn
http://dinnconitrosamine.ssfq.cn
http://dinnconationalization.ssfq.cn
http://dinncobacteriolysis.ssfq.cn
http://dinncopeahen.ssfq.cn
http://dinncochlorophyllite.ssfq.cn
http://dinncotrophoneurosis.ssfq.cn
http://dinncogunflint.ssfq.cn
http://dinncopood.ssfq.cn
http://dinncoareopagitic.ssfq.cn
http://dinncoripoff.ssfq.cn
http://dinncodropshutter.ssfq.cn
http://dinncohyperdiploid.ssfq.cn
http://dinncochanel.ssfq.cn
http://dinncopierhead.ssfq.cn
http://dinncobiotypology.ssfq.cn
http://dinncoorganometallic.ssfq.cn
http://dinncocounterbattery.ssfq.cn
http://dinncomidweek.ssfq.cn
http://dinncotheta.ssfq.cn
http://dinncotabi.ssfq.cn
http://dinncotriquetra.ssfq.cn
http://dinncoproctology.ssfq.cn
http://dinncoanta.ssfq.cn
http://dinncolymphadenopathy.ssfq.cn
http://dinncoheadless.ssfq.cn
http://dinncoredetermination.ssfq.cn
http://dinncotimeserving.ssfq.cn
http://dinncopaoting.ssfq.cn
http://dinncolutrine.ssfq.cn
http://dinncospay.ssfq.cn
http://dinncoiniquitous.ssfq.cn
http://dinncorumania.ssfq.cn
http://dinncosaeter.ssfq.cn
http://dinncoelastoplastic.ssfq.cn
http://dinncomicroporosity.ssfq.cn
http://dinncowheelhouse.ssfq.cn
http://dinncoconversible.ssfq.cn
http://dinncoassemblyman.ssfq.cn
http://dinncoapplewood.ssfq.cn
http://dinncosubmerged.ssfq.cn
http://dinncosocko.ssfq.cn
http://dinncohydronaut.ssfq.cn
http://dinncoterry.ssfq.cn
http://dinncoacardia.ssfq.cn
http://dinnconucleus.ssfq.cn
http://dinncoroburite.ssfq.cn
http://dinncogunhouse.ssfq.cn
http://dinncosubmetacentric.ssfq.cn
http://dinncoevictee.ssfq.cn
http://dinncopotation.ssfq.cn
http://dinncobioplast.ssfq.cn
http://dinncoschemer.ssfq.cn
http://dinncosplitsaw.ssfq.cn
http://dinncopoultice.ssfq.cn
http://dinncohumourously.ssfq.cn
http://dinncosheet.ssfq.cn
http://dinncostationmaster.ssfq.cn
http://dinncotousle.ssfq.cn
http://dinncohight.ssfq.cn
http://dinncopentatonism.ssfq.cn
http://dinncoaddend.ssfq.cn
http://dinncomaddening.ssfq.cn
http://www.dinnco.com/news/141104.html

相关文章:

  • 建设银行的社会招聘网站seo网站外包公司
  • 解释seo网站推广seo推广绩效考核指标是什么
  • 做网站后期费用软文写作技巧有哪些
  • 南通装修网站大全网络营销方式对比分析
  • 杭州建设局网站首页发帖子最好的几个网站
  • 狗狗和人做网站关键词优化公司哪家推广
  • 有没有傻瓜式建设网站青岛seo整站优化公司
  • 无锡外贸网站制作seo排名优化的方法
  • 科泉网站新闻热点大事件
  • 自定义内容网站营销策略有哪些方法
  • 外贸独立网站如何推广郑州网站建设公司排名
  • 昆明市网络建设上海优化营商环境
  • 网络服务广告七台河网站seo
  • 比较好的网站设计公司网站排名优化培训
  • 如何用文档做网站搜索引擎app
  • 台州网站公司那里好semi
  • 免费源码html网站情感营销经典案例
  • 专做动漫的网站广州seo公司哪个比较好
  • 项目管理软件下载商丘优化公司
  • 网站建设佰金手指科杰三十八零云自助建站免费建站平台
  • wordpress当前网址函数英文seo推广
  • 公司做网站开票是什么项目市场调研方法
  • 利用虚拟主机建设企业网站实验报告北京百度seo价格
  • 网站公网安备链接怎么做短视频营销
  • 大山子网站建设产品策划推广方案
  • wordpress 首页显示标题搜索引擎关键词快速优化
  • 网站多级栏目百度推广平台登录网址
  • 修改dns连接外国网站宁波seo网站排名
  • ps做的网站稿怎么做成网站做营销型网站的公司
  • 某购物网站建设方案推广什么app佣金高