我不熟悉Java,但我需要从applet中向远程Web服务发出请求.
Web服务(.Net 1.1)用于HttpContext.Current.Request.UserLanguages[0]
确定要使用的语言.但是这个成员的价值总是空的.
那么有没有办法传递Accept-Language标题和"en-GB"设置?
[新答案]
好吧我假设你在applet中做了类似的事情
URL url = new URL("http://www.whateverwebservice.com/passmealongthedata"); URLConnection urlconn = url.openConnection();
然后Accept-Language
在执行实际请求之前设置标题
//Assuming you know the language parameter you want to pass along you urlconnection.setRequestProperty("Accept-Language", "en-GB"); //or "en-GB,en;q=0.7" or similar .... continue with your program flow ....
如果语言参数应该取决于浏览器中的一个,那么使用.Net方法是有意义的.当用户请求在页面上构建小程序的页面时,插入下面描述的附加
标记.并修改applet以发送该值.希望我对此很清楚.
[REMOVED]
[旧答案]
假设您确实想在applet中确定客户端的浏览器版本:
这在Java AFAIK中是不可能直接实现的,因为applet不应该关心它在哪个浏览器中运行.但你可以
用javascript首先确定浏览器版本
然后用javascirpt动态编写applet标签
并通过标记将浏览器版本传递到applet
检查将参数传递给Applet以获取有关如何执行此操作的示例.