FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 10698|回复: 12
打印 上一主题 下一主题

请问一下三石先生关于appbox的(新手提问)

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-23 09:21:16 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
三石先生在你的appbox 例如:我创建一个窗体!我想获取appbox的cookie值   要怎么写呢?  

13#
发表于 2013-4-16 15:57:56 | 只看该作者
Pure_thought 发表于 2013-4-11 09:53
那我改了 会不会影响到APPBOX的功能?

亲,不会的
12#
 楼主| 发表于 2013-4-12 14:16:41 | 只看该作者
sanshi 发表于 2013-4-11 13:50
当然会了,不过你把读取的地方也改下就好了

这样啊~  我还想问下  怎么取当前用户的权限ID呢?
11#
发表于 2013-4-11 13:50:23 | 只看该作者
Pure_thought 发表于 2013-4-11 09:53
那我改了 会不会影响到APPBOX的功能?

当然会了,不过你把读取的地方也改下就好了
10#
 楼主| 发表于 2013-4-11 09:53:45 | 只看该作者
sanshi 发表于 2013-4-11 08:34
这里的roleIds参数是字符串,本来传入的是一个JSON数组字符串 ["roleid1", "roleid2", "roleid3"]

不过 ...

那我改了 会不会影响到APPBOX的功能?
9#
发表于 2013-4-11 08:34:10 | 只看该作者
Pure_thought 发表于 2013-4-11 07:47
真的 不是很懂- -
  1. FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
  2.                 user.Name,
  3.                 DateTime.Now,
  4.                 DateTime.Now.AddMinutes(120),
  5.                 true,
  6.                 roleIds,
  7.                 FormsAuthentication.FormsCookiePath);
复制代码
这里的roleIds参数是字符串,本来传入的是一个JSON数组字符串 ["roleid1", "roleid2", "roleid3"]

不过你可以放任意数据到这里面,比如你可以传递一个JSON对象字符串:{"yourkey":"yourvalue", "roleids": ["roleid1", "roleid2", "roleid3"]}
8#
 楼主| 发表于 2013-4-11 07:47:15 | 只看该作者
sanshi 发表于 2013-4-11 07:23
ticket.UserData 是个字符串,你可以存储一个数组字符串,然后自己解析

真的 不是很懂- -
7#
发表于 2013-4-11 07:23:24 | 只看该作者
Pure_thought 发表于 2013-4-11 06:40
三石先生那现在我想加多一个ID  要怎么写的代码呢?  您可以发我一个添加ID的代码吗? ...

ticket.UserData 是个字符串,你可以存储一个数组字符串,然后自己解析
6#
 楼主| 发表于 2013-4-11 06:40:27 | 只看该作者
sanshi 发表于 2013-1-24 03:14
可以看登录时存储在Cookie中数据:由于没有存储用户ID,所以在服务器端拿不到用户ID,不过可以拿到用户名 ...

三石先生那现在我想加多一个ID  要怎么写的代码呢?  您可以发我一个添加ID的代码吗?
5#
发表于 2013-1-24 03:14:05 | 只看该作者
Pure_thought 发表于 2013-1-24 02:40
那我应该怎么获取  当前登录用户的ID呢??可以给一个代码吗?

可以看登录时存储在Cookie中数据:
  1. FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
  2.                 user.Name,
  3.                 DateTime.Now,
  4.                 DateTime.Now.AddMinutes(120),
  5.                 true,
  6.                 roleIds,
  7.                 FormsAuthentication.FormsCookiePath);
  8.             string hashTicket = FormsAuthentication.Encrypt(ticket);
  9.             HttpCookie userCookie = new HttpCookie(FormsAuthentication.FormsCookieName, hashTicket);
  10.             userCookie.HttpOnly = true;
  11.             userCookie.Expires = DateTime.Now.AddMinutes(120);
  12.             Response.Cookies.Add(userCookie);
  13.             Response.Redirect(FormsAuthentication.DefaultUrl);
复制代码
由于没有存储用户ID,所以在服务器端拿不到用户ID,不过可以拿到用户名:User.Identity.Name

以及用户所属的角色列表:
  1. protected string GetIdentityRoleIDs()
  2.         {
  3.             FormsAuthenticationTicket ticket = ((FormsIdentity)User.Identity).Ticket;
  4.             return ticket.UserData;
  5.         }
复制代码
当然,你也可以把用户ID存储在Cookie中,这样就能拿到用户ID了。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-6-30 07:59 , Processed in 0.048854 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表