带有认证的web接口代码和postman访问

文章介绍了调用Web接口的两种常见方法,一种是使用Call,包括设置目标地址、操作名、认证信息和超时时间,然后进行invoke操作。另一种是利用HttpURLConnection,涉及POST请求、内容类型设置、SOAPAction以及基础授权的处理。此外,文章还提及了使用Hutool库的尝试,但由于生成的报文格式问题未被采用。
摘要由CSDN通过智能技术生成

调用web接口的的方法有:

1、Call

2、HttpURLConnection或HttpClient,需拼接报文

3、使用hutool,测试后发现生成报文格式与hutool文档说明不同,因此未采用,不列出

1、使用Call访问

认证可以直接set

Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new URL("url"));
call.setOperationName("operation");
call.setUsername("user");
call.setPassword("psd");
call.setTimeout(3000);
result= (String)call.invoke(new Object[]{operation, systemName, xmlData})
2、以HttpURLConnection为例
URL url = new URL(serviceUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setRequestProperty("Content-Type", "text/xml;charset=utf-8");
connection.setRequestProperty("SOAPAction", "");
// 设置连接主机服务器的超时时间:毫秒
connection.setConnectTimeout(1000);
// 设置读取远程返回的数据时间:毫秒
connection.setReadTimeout(1000);
String authentication = "user:psw";
connection.setRequestProperty("Authorization", "Basic " + Base64.getEncoder().encodeToString(authentication.getBytes()));
// 发送请求
connection.connect();
OutputStream os = conn.getOutputStream();




使用postman请求

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Postman是一款流行的API测试工具,它允许你发送HTTP请求并检查响应。当你尝试访问一个Spring Security中带有`@PreAuthorize`注解的REST接口时,这个注解通常用于控制只有满足特定权限的用户才能访问的方法。 `@PreAuthorize`是Spring Security的一个表达式语言(Expression Language)注解,它会在方法执行前检查授权策略。如果你要在Postman中模拟这样的请求,你需要做以下步骤: 1. **设置基础URL**:首先,在Postman中输入你的应用服务器的基础URL,包括API路径。 2. **模拟登录**:对于需要认证接口,你需要先模拟一个已授权的用户登录。这通常涉及到发送一个带有有效令牌(如JWT)的`Authorization`头,格式通常是 `Bearer <token>`。 3. **配置拦截器**:如果Postman支持自定义headers,你可以添加一个`Authorization`字段,并提供对应的凭证。如果没有内置支持,可能需要借助一些插件或者代理设置。 4. **测试接口**:现在可以发送GET、POST等请求到那个带有`@PreAuthorize`的接口Postman会自动带上你在第一步设置的认证信息。如果授权策略通过,接口将正常返回;如果不满足权限,则可能收到403 Forbidden错误。 5. **查看预授权失败**:在某些情况下,你可能想确认授权失败的情况,可以在Postman的预处理器(Pre-request Script)中编写检查逻辑来模拟不同的权限场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值