小弟我刚学.net 3个月,现在想开发一个多用户的博客,就是说可以注册可以访问他人空间的博客,问题如下:
当我们在访问好友的博客时,我们通常所用的方法是(123456是好友的用户名):
(方法一)http://www......com/default.aspx?userid=123456
但是,微博和点点这些网站的方法是:
(方法二)http://www......com/123456
关于url的处理现在知道是通过重写url解决的,但是系统怎么判断用户正在访问的是谁的空间呢?
(方法一)是通过querystring实现吗?还是cookie或者session?
(方法二)是怎样实现的呀?
一开始我想着用cookie或者session来存储当前正在访问的博客的userid,但这样的话一个浏览器只能打开一个博客,就算打开多个不同的博客,cookie或者session存储的也是最后一个打开的博客的userid,这时再回到第1个博客浏览内容时,只要页面一刷新,页面显示的内容肯定是最后打开的那个博客的内容!郁闷啊!发了两个贴都没人给出解决方法,我欲哭无泪啊!求高手指点!彻夜等待答复啊!!!悲剧的菜鸟!!!

解决方案 »

  1.   

    重写后地址栏输入的是http://www......com/123456,在你的程序看来url地址还是http://www......com/default.aspx?userid=123456,所以仍用Request["userid"]获取用户id
      

  2.   

    我的问题就是被访问者的问题,仅通过Request来获取,请问还需要用cookie或者session将其存储呢?
      

  3.   

    假如用同一个浏览器同时打开以下2个空间:
    http://www......com/123456
    http://www......com/654321
    这两个页面显示的都是被访问者空间的首页,如果使用cookie或者session存储被访问者userid的话就只能存储最后打开的那个了,按您的方法的话应该是不用将userid存储是吗?
      

  4.   

    糊涂了
    这样,先不考虑 http://www......com/123456
    这种情况下:http://www......com/default.aspx?userid=123456  <-- 程序你会写吧?
      

  5.   

    比如说我同时打开了张三、李四、王五的空间,地址栏的地址分别如下
    www....com/default.aspx?userid=zhangsan
    www....com/default.aspx?userid=lisi
    www....com/default.aspx?userid=wangwu
    对于上面这些个url系统都可以通过Request来获取userid从而显示相应的信息,但我可能还想打开wangwu空间的其他信息,比如我想查看他的好友列表、留言内容等等,这些内容都是要打开新页面的,如果要这样实现的话我是不是还要将www....com/default.aspx?userid=wangwu这里获取的userid传递到好友列表、留言内容的这些页面呢?还是说直接将www....com/default.aspx?userid=wangwu这里的userid用cookie或者session存储下来?
      

  6.   

    访问者(我)的userid使用cookie存储,请问是否还要使用cookie将正在访问(别人)的userid也存储下来呢?
      

  7.   

    哦,这样的话用户身份信息确实应该保存在cookie或session中的。
      

  8.   

    其实不管访问什么页面,当前用户的身份都应该从cookie或session中获取,跟被访问的页面是否为好友的博客没有关系的,你把两个不相关的事情放在一起,所以容易搞混了。
      

  9.   

    不需要把正在访问(别人)的userid存储下来。
    即使存下来,也不是“当前用户”的概念,而是“该用户最近拜访过的好友名单”这样的意思,看你有没有需要保存它。