首页新闻找找看学习计划

.cs文件中访问ashx

0
悬赏园豆:5 [已解决问题] 解决于 2015-06-09 16:12

请问在.cs后台文件中访问ashx怎么处理?

moyanger的主页 moyanger | 初学一级 | 园豆:173
提问于:2015-05-28 14:40
< >
分享
最佳答案
0

string PageUrl = "http://xxxxxx.com/xxxxxxxx.ashx";//URL
 
WebClient myWebClient = new WebClient();
byte[] myDataBuffer = myWebClient.DownloadData(PageUrl);
string result = Encoding.UTF8.GetString(myDataBuffer);
不知道你是不是找这个

收获园豆:5
Ian_zw | 初学一级 |园豆:15 | 2015-05-28 15:37
其他回答(4)
0

这个还真没这么玩过,  不过我个人鄙见, 是不是需要一个中间层(前台js)来完成交互呢?

请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-28 14:46

 就是想定时访问一下,保证seesion不过期。你有其它方法吗

支持(0) 反对(0) moyanger | 园豆:173 (初学一级) | 2015-05-28 14:49

@moyanger: 定时访问?  那意思就是说, 其实.cs后台文件中访问ashx的的目的就只是保证seesion不过期而已吗? 那么这个seesion保存的是什么呢?

支持(0) 反对(0) 请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-28 14:51

@请叫我头头哥: 就是访问一下,保证session不过期就行了。session就是用户的信息

支持(0) 反对(0) moyanger | 园豆:173 (初学一级) | 2015-05-28 14:54

@moyanger: 那这个步骤不能在.cs里完成吗?  因为这样访问ashx还增加了服务器的压力。  如果只是单纯的保证session不过期, 你可以在生命session的时候,确定下他的生命周期, 或者直接在web.config配置。

支持(0) 反对(0) 请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-28 14:58

@请叫我头头哥: 生命周期是只要用户不点退出,session 就不过期

支持(0) 反对(0) moyanger | 园豆:173 (初学一级) | 2015-05-28 15:00

@moyanger: 这个周期必须设定一个时间范围吧,我需要的效果是不限时

支持(0) 反对(0) moyanger | 园豆:173 (初学一级) | 2015-05-28 15:11

@moyanger: 恕我愚钝, 那这样我暂时就想不到其他好办法了。

支持(0) 反对(0) 请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-28 15:13

又见到你了,头头哥

支持(0) 反对(0) SharpCJ | 园豆:242 (菜鸟二级) | 2015-05-28 15:30

@菜鸟要谦虚: 承认了 - -

支持(0) 反对(0) 请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-28 15:43
0

换种Session存储方式就行了,或者直接将授权信息存到客户端cookie中。

幻天芒 | 园豆:36522 (高人七级) | 2015-05-28 15:32
0

就为了session不过期而去访问ashx,  太奇葩了, 

你是有计时器在cs后台代码中吗?

你能保证aspx.cs中的计时器在运行吗?

如果你非要这么干, 可以试试后台输出类似:  

Page.ClientScript.RegisterStartupScript(page.GetType(), "r",<script  src='/你的ashx文件.ashx?tn=math.random()&可继续接你的参数=XXX'></script>);

原理自己体会, 还可以使用setTimeout之类的定时。 

问天何必 | 园豆:3291 (老鸟四级) | 2015-05-28 15:40

领导这么要求

支持(0) 反对(0) moyanger | 园豆:173 (初学一级) | 2015-05-28 16:05
0

1,在前台放js计时器,定期ajax访问后台。

2,或者考虑不适用Session,将认证信息存储在cookie中。

3,或者用缓存。登陆后,将用户名存储在cookie中,做好加密,将登陆信息存在缓存中,设置缓存项用不过期。

4,从后台访问ashx,参考三楼,注意SessionID和应用程序池的回收。

庸俗 | 园豆:190 (初学一级) | 2015-05-30 18:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册