java - 用resteasy提出请求
问题描述
我想用 resteasy 构建一个 put 请求,类似于以下 curl 命令:
curl -u myUser:myP455w0rd! -X PUT "http://localhost:8081/artifactory/my-repository/my/new/artifact/directory/file.txt" -T Desktop/myNewFile.txt
我从类似的东西开始
Client client = ClientBuilder.newClient();
ResteasyWebTarget rWebTarget = (ResteasyWebTarget) client.target(targetPath);
rWebTarget.register(new BasicAuthentication(user, password));
rWebTarget.request().put(entity);
我想我必须将本地文件指定为,entity
但我不清楚该怎么做。
解决方案
它似乎以下列方式工作:
Client client = ClientBuilder.newClient();
ResteasyWebTarget rWebTarget = (ResteasyWebTarget) client.target(targetPath);
rWebTarget.register(new BasicAuthentication(user, password));
InputStream stream = Files.newInputStream(path);
Entity<InputStream> entity = Entity.entity(stream, MediaType.APPLICATION_OCTET_STREAM);
Response put = rWebTarget.request().put(entity);
推荐阅读
- python - 如果你有几个数组,你怎么能随机选择几个数组中的一个呢?
- batch-file - 将 Capital 中的 pcname 和下部的 domain.local 回显到配置文件中
- python - Python:生成所有长度为 N 的唯一排序列表
- javascript - JS 获取所有可用标准 HTML 标记的列表
- android - 数据绑定,绑定类找不到RealmObjects
- clojure - 如何设置路径参数的默认值?
- android - 并不总是触发带有 BroadcastReceiver 的地理围栏
- c++ - 如何获取 pcl 迭代最近点 (ICP) 的迭代次数?
- java - Hibernate:复杂的自连接查询
- python-3.x - sklearn 单例数组问题