加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如果使用基本身份验证,Applet将显示登录对话框

发布时间:2020-12-15 02:27:59 所属栏目:Java 来源:网络整理
导读:我在网页上插入了一个 Java applet: applet = 'embed' + ' type="application/x-java-applet;version=1.6"' + ' pluginspage = "http://www.java.com/en/download/"' + ' width="0" height="0"' + ' style="position: absolute"' + ' archive="/plugins/MyA
我在网页上插入了一个 Java applet:

applet = '<embed'
    + ' type="application/x-java-applet;version=1.6"'
    + ' pluginspage = "http://www.java.com/en/download/"'
    + ' width="0" height="0"'
    + ' style="position: absolute"'
    + ' archive="/plugins/MyApplet.jar"'
    + ' code="MyTestApplet.class"'
    + '>'

appletContainer.innerHTML = applet;

服务器正在使用基本身份验证.当Chrome或Safari(或更好的说JVM)请求MyApplet.jar文件时,会显示“需要验证”对话框,这非常烦人.

我发现Chrome / Safari(或JVM)由于某种原因没有自动将“Authentication:Basic”标头附加到GET请求.

任何想法如何强制在请求.jar文件时附加Authentication:Basic标头以避免这个额外的登录对话框?

解决方法

实际上,我认为问题可能是您的applet尝试打开连接回服务器,服务器受基本身份验证保护.如果是这样,您需要在applet中执行以下操作:

// http://www.coderanch.com/how-to/java/AppletsFaq#authentication
  String authorization = Base64Coder.encode(username + ":" + password);
  connection.setRequestProperty("Authorization","Basic " + authorization);

否则,只需将.jar文件移动到允许匿名读取访问的服务器上的目录中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读