2015-11-04 46 views
0

enter image description hereenter image description here
好吧我现在卡住....请帮助。以下是REST API中POST请求的图片和Jenkins构建参数的图片。该请求在外部REST客户端中工作,但是当我将有效负载导入Jenkins中的构建参数时,我得到了一个错误的语法错误。一切都必须在JSON中完成 - user3516719 7分钟前Jenkins,ADVANCED REST API

+0

如何做你的工作后这种负载? 你能提供这项工作的更多信息吗?你使用任何插件?就我个人而言,我发现使用powershell/shell脚本可以更轻松地将我的RESTful请求自动化到其他服务,但是,我相信有插件可以实现这一点。 –

+0

我们使用Jenkins的HTTP插件。一切都需要在SON不知道,如果我们可以使用PowerShell。如果可以的话,你会如何使用powershell? – user3516719

+0

发送JSON应该不成问题。 我会发布一个简单的脚本作为答案,以便它更易于阅读 –

回答

0

正如上面在评论中提到的,这里是一个非常简单的powershell脚本,它将发送一个JSON负载,您需要用两个参数调用它(例如脚本.ps1 -JsonFile“C:\ 1.json”-IpAddress“1.1.1.1”): (请考虑这可能需要一些调整,因为我没有测试下面的代码,您可能想要修改方法POST/PUT或资源结构)。

,将发送一个JSON有效载荷:

Param(
    [String]$JsonFile, 
    [String]$IpAddress 
) 

    Function RESTRequest ($IpAddress, $JsonContent) 
    { 
     $RequestHeader = @{}; 
     $RequestHeader.Add("Accept", "application/json"); 
     $resource = "http://$IpAddress/" 
     # Add more headers here if required 
     $response = Invoke-RestMethod -Method POST -Uri $resource -Headers $RequestHeader -ContentType "application/json" -Body $JsonContent -ErrorAction Stop 
     Write-Host $response 
    } 
$JsonContent = Get-Content -Path $JsonFile 
RESTRequest -IpAddress $IpAddress -JsonContent $JsonContent 
+0

谢谢。何时在有效负载的原始部分中执行此操作? – user3516719

+0

不知道我明白这个问题,但你可能想要一个“Freestyle”jenkins工作,它将运行上面的脚本。只需将要发送的JSON放入工作区,并用脚本指向它: Powershell步骤 - “调用 - 表达式路径\ \ \ script.ps1 -JsonFile $ env:WORKSPACE \ payload.json -IpAddress”1.1.1.1“ –

相关问题