`
zqb666kkk
  • 浏览: 737631 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

OAuthProblemException{error='unsupported_response_type', description='Invalid re

    博客分类:
  • java
阅读更多
OAuthProblemException{error='unsupported_response_type', description='Invalid response! Response body is not application/json encoded', uri='null', state='null', scope='null', redirectUri='null', responseStatus=0, parameters={}}


之前用了 蓝缘系统的开源代码 整合开涛兄的  OAuth2 shiro集成功能的时候 整合的时候发现 一直报上面这个错误 网上搜了好久都没找到,最后发现

<!-- 采用SpringMVC自带的JSON转换工具,支持@ResponseBody注解 -->
	<!--<ref bean="mappingJackson2HttpMessageConverter" />   -->  <!-- JSON转换器 -->
 
	<bean
		class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
		<property name="messageConverters">
			<list>
				<ref bean="mappingJackson2HttpMessageConverter" />    
		  	</list>
		</property>
	</bean>

如果不把上面的去掉那么 oathu2response返回的json被上面的拦截后处理成了这样


这样的话 paeseJson方法里 转化json就会报错

如果去掉上面的配置 得到的
    protected void setBody(String body) throws OAuthProblemException {

        try {
            this.body = body;
            parameters = JSONUtils.parseJSON(body);
        } catch (JSONException e) {
            throw OAuthProblemException.error(OAuthError.CodeResponse.UNSUPPORTED_RESPONSE_TYPE,
                "Invalid response! Response body is not " + OAuth.ContentType.JSON + " encoded");
        }
    }
这里的 body就是


这样就不会报上面那个错误了
可以对比发现两个上面那个数据被加了“//”转义符这个应该就是导致 报错的原因

蓝缘系统里spring-mvc.xml里有一段配置是这样的 把这个去掉后 该错误就解决了,想了下应该是 该 配置拦截了 oathu2的json数据 更改了它的格式 导致 oathu2认为是非法的返回类型 从而报错 。

如果 有人遇到类似的错误可以参考 我的这个解决案例的思路。
  • 大小: 11.5 KB
  • 大小: 14.5 KB
0
1
分享到:
评论

相关推荐

    ERR_UNSUPPORTED_OPERATION(解决方案).md

    在软件开发过程中,遇到错误提示ERR_UNSUPPORTED_OPERATION意味着当前执行的操作未得到支持。为解决这类问题,开发者需要根据具体的上下文和所使用的编程语言或框架,采取一系列诊断和调试的措施。以下详细讨论了几...

    unsupported_Oracle10_ODBC.zip

    在本案例中,"unsupported_Oracle10_ODBC.zip"文件可能包含了一个关于解决Oracle 10g ODBC驱动程序报错"An unsupported operation was attempted"的详细指南。这个错误通常意味着尝试执行的操作不被当前的ODBC驱动...

    MATLAB-Based Simulation of Buoyancy-Driven Underwater Glider Motion.pdf

    根据提供的文件信息,本文主要阐述了利用MATLAB模拟浮力驱动式水下滑翔机运动的研究,下面详细解读文档中提到的关键知识点: 1. 浮力驱动式水下滑翔机(Buoyancy-Driven Underwater Glider):水下滑翔机是一种自主...

    native-esm-experiments

    失误ERR_UNSUPPORTED_DIR_IMPORT 本机ESM不支持目录导入我尝试并失败了使用package.json exports功能来package.json此问题。ERR_MODULE_NOT_FOUND 导入时必须包括模块的扩展名。 我尝试并失败了使用package.json ...

    Matlab下RLE算法的简单实现

    error('Unsupported image type.'); % 不支持 RGB 图像 end in_dat = in_dat'; % 转置 in_dat = in_dat(:); % 转换为列向量 len = length(in_dat); % 获取数据长度 c = 1; % 当前位置 while c &lt;= len ...

    ERR_INVALID_ARGUMENT(解决方案).md

    print(e) # 输出:unsupported operand type for +: 'int' and 'str' ``` 再者,参数范围的检查也是防止此类错误的关键步骤。例如,在处理分页功能时,页码通常应大于零。如果传入一个负值或零,需要有相应的错误...

    Unsupported Feature(解决方案).md

    def unsupported_feature_replacement(input_string): # 使用内置的字符串替换方法来替代不支持的功能 return input_string.replace(" ", "_") input_text = "Hello World!" output_text = unsupported_feature_...

    Unsupported Layer Type(解决方案).md

    在深度学习框架中,如PyTorch、TensorFlow等,开发人员可能会遇到“Unsupported Layer Type”错误。这类错误通常表明尝试使用的层或者操作不被当前使用的框架版本支持。解决这类问题,一般需要遵循以下步骤,并注意...

    PCSC协议错误代码总结

    2. **SCARD_E_INVALID_RESPONSE (0x80100007)**:智能卡未返回有效的响应。 3. **SCARD_E_NO_MEMORY (0x80100006)**:系统资源不足。 4. **SCARD_E_NO_READERS_AVAILABLE (0x80100013)**:没有可用的读卡器。 5. **...

    Unsupported File Format(解决方案).md

    print(f"Error: {e}") # 捕获文件不是CSV格式或文件无法打开等错误 ``` 但若文件格式确实是未知且不受支持的,就需要进行更深入的调查。如果没有任何库能够处理该格式,则可能需要考虑自行编写解析器,或者将文件...

    图片处理 javax.imageio.IIOException: Unsupported Image Type

    在Java编程环境中,图片处理是一项常见的任务,但有时可能会遇到“javax.imageio.IIOException: Unsupported Image Type”的错误。这个异常通常表示Java的`ImageIO`类库无法识别或支持所尝试读取或写入的图像格式。...

    !!!!ap6212a0_a33_sc3817r_验证通过_修正wifi的配置文件为nvram_ap6212.txt

    #ro.sys.storage_type = emulated \ #for gms #PRODUCT_PROPERTY_OVERRIDES += \ # ro.sys.mutedrm=true \ # ro.adb.secure=1 PRODUCT_PROPERTY_OVERRIDES += \ ro.sf.lcd_density=213 \ ro.product.firmware=v...

    ESOCKTNOSUPPORT(解决方案).md

    开发者在使用上述代码时,应当替换`YOUR_ERROR_NUMBER`和`socket.SOME_UNSUPPORTED_OPTION`为具体的错误码和选项名称。错误处理逻辑需要根据实际项目需求来编写,以确保程序能够在遇到错误时稳定运行。 处理...

    PreparedStatementCRUD操作mysql数据库

    预编译对象 PreparedStatement的CRUD操作 crud是指在做计算处理时的增加(Create)、读取(Retrieve)、更新(Update)和删除(Delete)--六祎大王家贡献

    libcurl功能和使用介绍

    - **CURLE_UNSUPPORTED_PROTOCOL (1)**:指定的协议不被支持。 - **CURLE_COULDNT_RESOLVE_HOST (6)**:DNS 解析失败。 - **CURLE_COULDNT_CONNECT (7)**:无法建立到服务器的连接。 - **CURLE_GOT_NOTHING (22)**:...

    ap6212a0_a33_sc3817r_服务器验证通过_bt已经通了_wifi需要修改配置_需要再次验证_20170626_1549.7z

    #ro.sys.storage_type = emulated \ #for gms #PRODUCT_PROPERTY_OVERRIDES += \ # ro.sys.mutedrm=true \ # ro.adb.secure=1 PRODUCT_PROPERTY_OVERRIDES += \ ro.sf.lcd_density=213 \ ro.product.firmware=v...

    ap6212a0_bb16v3_sina33验证通过BT的功能_wifi部分有问题_20170626_1148没有外层目录.7z

    #ro.sys.storage_type = emulated \ #for gms #PRODUCT_PROPERTY_OVERRIDES += \ # ro.sys.mutedrm=true \ # ro.adb.secure=1 PRODUCT_PROPERTY_OVERRIDES += \ ro.sf.lcd_density=213 \ ro.product.firmware=v...

    etcd-v3.1.10-linux-amd64.tar.gz

    《etcd v3.1.10在OpenStack环境中的应用与重要性》 etcd-v3.1.10-linux-amd64.tar.gz是一个针对Linux x86_64平台的etcd版本3.1.10的压缩包。etcd是一个分布式的、一致性的键值存储系统,它在分布式计算领域中扮演着...

Global site tag (gtag.js) - Google Analytics