redirect_uri=http://www.test.com?a=1重定向后变成http://www.test.com?a=1?code=xxxx&state=xxxx,这个钉钉问题大家是怎么处理的?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
处理钉钉问题的方法和策略可以因具体情况而异,但通常有以下几个常见的途径:
咨询钉钉官方支持:如果遇到技术或功能方面的问题,您可以直接咨询钉钉的官方技术支持团队。他们将提供专业的解答和指导,并帮助您解决问题。
阅读文档和指南:钉钉开放平台提供了详细的文档、API参考和开发者指南,涵盖了各种开发、配置和使用方面的信息。阅读相关文档可以帮助您更好地理解钉钉的特性和功能,以及如何解决常见的问题。
搜索开发者社区和论坛:钉钉开放平台拥有活跃的开发者社区和论坛,您可以搜索社区中是否有类似的问题,并查看其他开发者的解决方案和经验分享。这些社区和论坛是宝贵的资源,可帮助您快速找到解决问题的方法。
参考示例代码和案例:钉钉开放平台提供了丰富的示例代码和应用案例,您可以参考这些示例代码来理解和实现特定功能,或借鉴应用案例来解决类似的问题。
与其他开发者交流:在开发过程中,您可以与其他有经验的开发者进行交流和讨论。社交媒体、开发者论坛或技术博客都是交流的好平台,您可以从他们的经验和见解中获得帮助。
多加一个问号的问题,主要的处理方法有两种:
直接截取URL字符串
因为多个?符才会带来问题,所以直接截取http://www.test.com?a=1这部分url就可以了 ↗。
可以用以下方法截取:
js
Copy
let url = 'http://www.test.com?a=1?code=xxxx&state=xxxx';
let newUrl = url.split('?')[0];
console.log(newUrl); // http://www.test.com?a=1
使用URL对象解析
使用URL对象的search属性来获取需要的查询字符串。
js
Copy
let url = 'http://www.test.com?a=1?code=xxxx&state=xxxx';
let urlObj = new URL(url);
let newUrl = urlObj.origin + urlObj.search;
console.log(newUrl); // http://www.test.com?a=1
以上两个方法都是基于截取字符串来解决这个问题。
其实,出现这个问题的根本原因在于:
你的redirect_uri 参数中包含了自己的查询字符串 a=1
钉钉在重定向时,又加上了自己的查询字符串 code、state
参考https://open.dingtalk.com/document/orgapp/tutorial-obtaining-user-personal-information 此回答整理自钉群“钉钉开发者社区(互助群)”