首先我们讨论一下sip服务器回复401与407有什么区别,看了一下rfc3261,发现没有明确的说明,只是说401是UAS和registar回复的应答,而407是proxy回复的应答。但是很多时候proxy就是UAS,在GB28181里面有什么讲究呢?从网络上看到这么一种解答不知准确与否:
401 Unauthorized,明确提示是未授权。这个应答是由UAS和注册服务器产生的。常见场景是Register用户注册的时候。
407 proxy authentication required ,意思是proxy服务器需要提供认证信息。常见场景是Invite发起呼叫的时候。
目前我们就当他是准确的说法吧,回到我们的问题,怎么解决服务器对registration回复是407而不是401,通过跟踪源码我们发现:
我们Helper是根据是否是proxy决定生成401的响应还是407的响应,如果是proxy生成407,如果不是生成401.
而是不是proxy是由ServerAuthManager决定的,调用上面代码的代码片段为:
本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕,E-mail:xinmeigg88@163.com
本文链接:http://www.ksxb.net/tnews/2553.html