当前位置: 首页 > 知识库问答 >
问题:

如何在特定jwt上下文下发出post请求webclient

法玮
2023-03-14

如何使用WebClient在下面的上下文中发出POST请求?

我能够成功地从ADFS验证和检索JWT令牌:

using (var client = new WebClient())
{
    var data = Encoding.UTF8.GetBytes(rstXml);
    client.Headers.Add("Content-Type", "application/soap+xml; charset=utf-8");
    var responseData =
        client.UploadData($"https://{adfsServer}/adfs/services/trust/13/usernamemixed", data);
    var rstr = Encoding.UTF8.GetString(responseData);
    var xmlDoc = new XmlDocument();
    xmlDoc.LoadXml(rstr);
    var nsmgr = new XmlNamespaceManager(xmlDoc.NameTable);
    nsmgr.AddNamespace("wsse",
        "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd");
    nsmgr.AddNamespace("wsu",
        "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd");
    jwt = xmlDoc.SelectSingleNode("//wsse:BinarySecurityToken", nsmgr).InnerText; // JWT
 }

共有1个答案

狄宜然
2023-03-14

授权头应该能够添加到客户端,以发出授权请求。

//Adding authorization token to header
client.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + jwt);
//Resetting content type to be sent if we wanted to POST JSON
client.Headers[HttpRequestHeader.ContentType] = "application/json; charset=utf-8";
//POST json
var json = "{ \"Key\": \"Hello World\" }";
var response = client.UploadString("__url_here__", json);

//...
 类似资料:
  • 这部分文档描述了在 Flask 0.7 中的行为,与旧的行为基本一致,但有细小微妙的 差异。 这里推荐先阅读 应用上下文 章节。 深入上下文作用域 比如说你有一个应用函数返回用户应该跳转到的 URL 。想象它总是会跳转到 URL 的 next 参数,或 HTTP referrer ,或索引页: from flask import request, url_for def redirect_url

  • 问题内容: 如何在node.js中使用数据发出出站HTTP POST请求? 问题答案: 这是一个使用node.js向Google Compiler API发出POST请求的示例: 我已经更新了代码,以显示如何从文件而不是硬编码的字符串发布数据。它使用async 命令来实现此目的,并在成功读取后发布实际代码。如果有错误,则抛出该错误,如果没有数据,则该过程以负值退出以指示失败。

  • 本文向大家介绍如何使用Swift在iOS App上发出HTTP POST请求?,包括了如何使用Swift在iOS App上发出HTTP POST请求?的使用技巧和注意事项,需要的朋友参考一下 要在iOS中发出http请求,我们将使用DataTask和会话。我们将创建配置,会话,URL,请求和dataTask对象。让我们看看我们将要执行的步骤。 首先我们需要创建一个会话对象,这是默认配置。 然后,我

  • 我阅读了一些将jsons发布到服务器的示例。 有人说: OkHttp是Java提供的HttpUrlConnection接口的实现。它提供了一个用于写入内容的输入流,而不知道(或关心)该内容是什么格式。 现在我想用name和password参数对URL做一个普通的post。 这意味着我需要自己将名称和值对编码成流?

  • 问题内容: 我正在尝试发出POST请求以检索有关一本书的信息。这是返回HTTP代码的代码:302,已移动 当我从浏览器尝试时,可以从以下页面进行操作:http : //www.bkstr.com/webapp/wcs/stores/servlet/BuybackMaterialsView?langId=-1&catalogId=10001&storeId=10051&schoolStoreId=1

  • 我在网上找到了这个脚本: 但我不明白如何与PHP一起使用它,也不明白params变量内部的内容是什么,也不明白如何使用它。我能帮个忙吗?