首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用python请求上传到nexus3

使用python请求上传到nexus3
EN

Stack Overflow用户
提问于 2019-09-10 14:24:53
回答 1查看 1.6K关注 0票数 0

我有一个python脚本,我正在尝试使用python请求库将资产上传到nexus3。下面显示的代码适用于nexus2,但由于nexus3的rest api发生了变化,我发现很难将资产上传到nexus3。

我修改了我的有效负载以包含存储库和asset1文件,但它不起作用。我还尝试包含头部,并将有效负载转换为json格式,但没有成功。

任何线索都将不胜感激。

代码语言:javascript
复制
import requests

filename = 'content.zip'
url = "https://nexus3-url/repos/service/rest/v1/components?repository=maven-repo"

files = { 'filename': open(filename, 'rb') }
payload = {
                'groupId' : 'group.id',
                'asset1.extension' : 'zip',
                'version' : '1.0.0',
                'artifactId' : 'test',
                'generate-pom' : 'false'
        }


response = requests.post(url,
                        allow_redirects = False,
                        auth = requests.auth.HTTPBasicAuth(username, password),
                        files = files,
                        data = payload,
                        timeout = 20,
                        verify = cert,
                )

我得到的错误消息是requests.exceptions.HTTPError: 422 Client Error: Unprocessable Entity for url:

EN

回答 1

Stack Overflow用户

发布于 2019-09-10 16:21:15

找到了解决方案。由于nexus3的GAV参数不同,因此应该采用这种方式。

代码语言:javascript
复制
import requests

filename = 'content.zip'
payload = {
        'maven2.groupId': (None, 'group.id'),
        'maven2.artifactId': (None, 'test'),
        'maven2.version': (None, '1.0.0'),
        'maven2.generate-pom': (None, 'false'),
        'maven2.packaging': (None, 'zip'),
        'maven2.asset1': (filename, open(filename, 'rb')),
        'maven2.asset1.extension': (None, 'zip'),
}
params = (
        ('repository', 'maven-repo'),
)
url = "https://nexus3-url/repos/service/rest/v1/components

response = requests.post(url,
         allow_redirects = False,
         auth = requests.auth.HTTPBasicAuth(username, password),
         params = params,
         files = payload,
         timeout = 20,
         verify = cert,
)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57865098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档