Grails Mailgun、Groovy HTTPBuilder和HTTP基本身份验证问题
当服务器/api端点没有给出正确的响应时,HTTPBuilder的行为似乎出错了。Mailgun的API没有响应401,而是提供了一些其他东西。(如果我错了,请纠正我!) 由于没有发送“需要身份验证”的头,HTTPBuilder甚至不会尝试进行身份验证 我想我通过这个线程解决了这个问题: 他们建议,手动写入身份验证头将强制每次进行身份验证。需要稍微修改一下,使其看起来像这样:Grails Mailgun、Groovy HTTPBuilder和HTTP基本身份验证问题,grails,groovy,basic-authentication,httpbuilder,mailgun,Grails,Groovy,Basic Authentication,Httpbuilder,Mailgun,当服务器/api端点没有给出正确的响应时,HTTPBuilder的行为似乎出错了。Mailgun的API没有响应401,而是提供了一些其他东西。(如果我错了,请纠正我!) 由于没有发送“需要身份验证”的头,HTTPBuilder甚至不会尝试进行身份验证 我想我通过这个线程解决了这个问题: 他们建议,手动写入身份验证头将强制每次进行身份验证。需要稍微修改一下,使其看起来像这样: def user = 'tom' def pass = 'secret' def http = new HTTPB
def user = 'tom'
def pass = 'secret'
def http = new HTTPBuilder('http://myhost.com')
http.headers[ 'Authorization' ] = "Basic " + "$user:$pass".getBytes('iso-8859-1').encodeBase64()
现在好像有用了。还有更好的主意吗?这看起来可能是一种黑客行为。试着使用类似于:
def authSite = new HTTPBuilder( 'https://some-protected-site.com/' )
authSite.auth.basic 'myUserName', 'myPassword'
更多信息请访问:,我觉得这完全合理。