2017-06-23 59 views
6

我正在使用cordova inappbrowser Plugincordova inappBrowser插件将用户名和密码传递给URL

当我在下面的任何移动浏览器中打开URL弹出来,但是当我试图通过inappbrowser打开相同的URL我没有得到这个身份验证弹出。它直接显示401认证错误。

enter image description here

为什么这种行为的改变?有什么我必须提供以获得像浏览器一样的行为?

还是有我可以直接传递用户名和密码?那么我如何实现基本认证?

我也尝试过使用表单提交的方式。

<form name="frm" id="frm" method="POST" action="http://sample.xyz/test"> 
    <input type="hidden" name="username" id="username" value="abc" /> 
    <input type="hidden" name="password" id="password" value="xyz" /> 
</form> 

此外,我也试过下面也是我通过谷歌搜索得到的。

window.open("http://abc:[email protected]/test"); 

帮我一把。

+1

如果您从网址中删除单引号,它会起作用吗?即。 window.open( “HTTP:// ABC:[email protected]/test”);您应该能够使用inappbrowser以这种方式传递授权凭证。 –

+0

@JordanBurnett请参阅我更新的问题。我试过没有单引号得到相同的错误。 – Suhas

+0

@Suhas检查答案,让我知道你是否有任何问题。如果您仍然面对401,请添加错误消息的屏幕截图 –

回答

0

这不是任何页面的登录表单。这是一个htaccess(或类似的)身份验证。

因此,您不能通过登录表单简单地提供凭据。

有一个在Google Groups

你试过

window.open("http://'abc':'xyz'@sample.xyz/test"); 

将其更改为

window.open("http://abc:[email protected]/"); 

或者

window.open("http://abc:[email protected]/test"); 

这将AU的方法对此进行讨论验证你的网站。

+0

我已经试过没有引号也得到相同的行为。但是,为什么这种行为改变就像移动浏览器auth弹出窗口即将到来,但是当我试图通过插件打开时,它不会到来。 – Suhas

+0

尝试'alert'是否在inappbrowser中工作 –

+0

示例主体onload警报消息正在inapp插件中运行。 – Suhas

相关问题