读书人

又是关于自动登录的大家来捧捧场啊多

发布时间: 2012-03-28 15:40:03 作者: rapoo

又是关于自动登录的,大家来捧捧场啊,谢谢啦
话说,有个系统网站a的登录页面,仅仅知道该页面的地址。

现在要在自己的系统网页b上写一个连接,这个连接可以打开上面网站A并且完成登录。
然后这个网页B上的链接,指向一个java
然后就写这么个java程序,如何完成这个操作呢?

我写了点
index上就一个连接,连接指向servlet/check.java,check就把账户名密码传到login.jsp

login.jsp
<script>
function login()
{
form.submit();
}
</script>
<body onload=login()>
<form method=post name=form action="http://passport.renren.com/PLogin.do">
<input type=hidden value="${requestScope.email}" name = "email">
<input type=hidden value="${requestScope.password}" name = "password">
</form>

check.java
这个里面先直接写死个用户名跟密码,传递到login.jsp做实验


但是,如果不要写login.jsp这个页面的话?这个功能要怎么实现?



[解决办法]

HTML code
<a href="登录请求的url?method=登录验证方法名&userName=你的id&password=你的密码" target="main">网站B点这登录A网站</a>
[解决办法]
我的思路是:
点击链接并传递参数->登陆页用js获得参数->判断如果参数存在则调用action方法并传递用户名密码
[解决办法]
自动登录?唯有cookies。
[解决办法]
cookie , session, application都行啊
不要用户名登录, 呵呵
那只能在地址栏里面传递参数了啊
[解决办法]
cookie .........
[解决办法]
你都能知道对方密码了 还要自己写个自动登陆?
难道是获得多个用户名 密码 然后循环登陆?
知道对方登陆Action AND method否?
知道对方传参个数及登陆标志否?
知道对方传递参数内容否?
[解决办法]
这个有点复杂,阿里巴巴就有这样的免登录接口。。。不知道你是不是那个意思?
[解决办法]
/**
* 确定机构 进业务时选择机构
*/
public ActionForward confirmOrg(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
try {
List orgList = getPermittedOrg(getUser(request).getUserId(),
TRADENO);
if (orgList == null && orgList.size() < 0) {
ActionMessages messages = new ActionMessages();
messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
"error.org.noPrivilege"));
saveMessages(request, messages);
return mapping.findForward("error");
}
request.setAttribute("orgs", orgList);
} catch (Exception e) {
ActionMessages messages = new ActionMessages();
messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
"error.str", e.getMessage()));
saveMessages(request, messages);
log.error(e);
return mapping.findForward("error");
}
return mapping.findForward("confirmOrg");
}


象这个你怎么进??
先要从数据库获得用户所属机构、ID、权限。。。。放到orgList 在返回页面更何况 连orgList参数构成都不知道是哪些。。。
什么都不知道怎么进去嘛?
[解决办法]
关注
[解决办法]
cookies session 等吧,URL加上参数等
[解决办法]
这个问题我也有兴趣,再帮你顶上去……&呵呵
------解决方案--------------------


这个问题我也有兴趣,再帮你顶上去
[解决办法]
期待中
[解决办法]
很期待,顶! 顶!
[解决办法]
帮顶.,..........
[解决办法]
目标网站登录框提交的地址是http://www.test.com/login.jsp
账号abc 密码123
登陆框user属性username pwd属性password
你自己的页面上提供一个url http://www.test.com/login.jsp?username=abc&&password=123,点击就提交这个地址了,就能登录目标网站登陆后的页面了,不知道你要的是不是这个效果。
[解决办法]
HttpClient能解决这个我问题,我试过了,不过我把他放到web上是出了点问题,tomcat不能找到这个项目的jar,不过我确实导入了,如果你知道怎么解决这个问题麻烦告诉我啊,HttpClient一定行,我觉得还是我的问题,jar不能被识别。问一下,eclipse构建路径是用的一个路径,怎么才能让他切实把jar放到lib文件夹下啊?
[解决办法]
直接用java api 里的URL类
[解决办法]
用httpclient
[解决办法]

探讨
cookie , session, application都行啊
不要用户名登录, 呵呵
  那只能在地址栏里面传递参数了啊

[解决办法]
我的思路是:
在你的网站上,把username和password放到浏览器的cookies上;//怎么放?请高手回答清楚!!
链接这样写:某网站?usename=xx&password=xx;
这个xx这样,用javascript获得cookies,从而获得username和password.//这行是我猜的,我也不会javascript。还是请高手答!!!
等高手回答,帮你顶。\(^o^)/~
[解决办法]
LZ 把你的思路再重新整理下 再发一遍 看得有点糊涂了 另解释下现在做到哪个地步了 待解决哪些问题
大家好一起研究研究嘛

[解决办法]
Cookie的办法是行不通的。你可以通过你自己的网站把用户名和密码保存在客户端,可是没法让你要链接到的网站去自动读取Cookie啊。
[解决办法]
我有个想法 不知道行不行的通 暂时我对Cookies了解的太少了
首先 自己在目标网站随便注册一个账户 让其将Cookies保存到本地
然后用request对象getCookies 获值
模拟拼接出连接

HTML code
<html><head><script language="javascript">function onload(){   document.forms[0].userName.value="test";   document.forms[0].password.value="123456";   window.open("这里直接拼接网站地址+用户名+密码+其他参数");}</script></head><body onload="javascript:onload()"><form action="xxxxxx"><input type="text" name="userName" value=""><input type="text" name="password" value=""></body></html>
[解决办法]
你是说把账户、密码、参数什么的都放到Action里面去?然后呢?从action跳转到他们的页面?
[解决办法]
需求:B网站有一个链接aa可以直接跳到A网站,并且自动完成用户登录

aa的href属性可以这样拼写:/A/**.do?method=autoLogin&userId=(session拿)&randomNum=(随机码)&code(防伪编码)

参数的userId可以从当前B网站的session中用户信息里获取
randomNum可以随便生成一个几位的随机码
code可以自己写一个方法(自己定义,保证A-B网站都有这个方法)
通过传递userId,randomNum两个参数按一定规则生成code

然后链接跳到的是A网站的一个接受自动登录处理的Action,
拿到userId和randomNum,同样调用上边说的自定义方法,验证code是否一致。
如果一致,在A网站中再根据userId,查到用户信息,把信息放到A网站的session中
[解决办法]
没做过。。。感觉方法应该有很多哦!!!前端脚本要好好学习了。。。
帮顶。。。。。。
[解决办法]
感觉是 要实现 单点登录啊

读书人网 >Java Web开发

热点推荐