paul_cheung

导航

< 2025年7月 >
29 30 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
3 4 5 6 7 8 9

统计

post content data to url and get response

复制代码
public async Task<ActionResult> Login(FormCollection form)
        {
            //check company id;
            var corporationDisplayName = form["corporationName"];
            var userName = form["userName"];
            var passWord = form["password"];

            var corporationId = await Utility.GetCorproationId(corporationDisplayName);
            var userAndPwd = "{\"AccountName\":\"" + userName + "\",\"Password\":\"" + passWord + "\",\"ClientInstallationId\":\"00000000000000000000000000000000\"}";
            var baseUrl = ConfigurationCenter.Global["DirectoryBaseUrl"];
            var loginUrl = baseUrl + "/Corporations/" + corporationId + "/Accounts/" + 1 + "/SignIn";

            HttpContent content = new StringContent(userAndPwd);
            content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
            var request = new HttpClient();
            var response = await request.PostAsync(loginUrl, content);
            var responseConent = response.Content.ReadAsStringAsync();
            Debug.Write("response content:" + responseConent);
            var json = JsonObject.Parse(await response.Content.ReadAsStringAsync());

            var accessToken = json.GetStringValue("AccessToken");
            var userId = json.GetStringValue("UserId");

            return RedirectToAction("", "", new { accessToken = accessToken, userId});
复制代码

 方法2:

复制代码
string url = UrlUtility.Format("Corporations/{0}/Accounts/1/SignIn", service.CorporationId);
                using (var client = new HttpClient())
                {
                    var writer = new JsonWriter();
                    writer.WriteStartObject();
                    writer.Write("AccountName", accountName);
                    writer.Write("Password", password);
                    writer.WriteEndObject();

                    var result = await client.PostAsync(UrlUtility.Combine(service.DefaultDirectoryService, url), new ByteArrayContent(Encoding.UTF8.GetBytes(writer.ToString())));
                    var json = JsonObject.Parse(await result.Content.ReadAsStringAsync()) as JsonObject;
                    var userId = json.GetGuidValue("UserId");
                    var accessToken = json.GetStringValue("AccessToken");
复制代码

 

posted on   paul_cheung  阅读(204)  评论(0)    收藏  举报

编辑推荐:
· 糊涂啊!这个需求居然没想到用时间轮来解决。
· 浅谈为什么我讨厌分布式事务
· 在 .NET 中使用内存映射文件构建高性能的进程间通信队列
· 一个 java 空指针异常的解决过程
· 揭开 SQL Server 和 PostgreSQL 填充因子的神秘面纱
阅读排行:
· 15天流量破10万,免费拼图工具的毕业典礼是被抄袭
· 从硬盘爆满到 GitHub 封号,一位前端开发者的开源历险记
· .NET 使用 DocNET 库快速高效的操作 PDF 文档
· 微软又一自动化开源王炸,Selenium 慌了!
· 分享一个 ProHub 风格 logo 生成器
点击右上角即可分享
微信分享提示