import groovyx.net.http.HttpResponseDecorator;
import org.apache.http.HttpRequest;
import org.apache.http.protocol.HttpContext;
import org.apache.http.HttpRequestInterceptor;
import org.apache.http.entity.StringEntity;
import groovy.json.JsonSlurper;
import static groovyx.net.http.Method.*
import static groovyx.net.http.ContentType.*
@Grapes([
@Grab(group = 'org.codehaus.groovy.modules.http-builder',
module = 'http-builder', version = '0.5.1'),
@GrabExclude('org.codehaus.groovy:groovy')
])
//Your Jira api url
def jiraApiUrl = 'localhost:8989/rest/api/2/'
//Your user and password
def basic = 'Basic ' +
'user:password'.bytes.encodeBase64().toString()
//New issue to add
def msg= '''
{
"fields": {
"project": {
"id": "10000"
},
"summary": "something's test www",
"issuetype": {
"id": "10000"
},
"assignee": {
"name": "luigi"
},
"labels": [
"bugfix",
"blitz_test"
],
"timetracking": {
"originalEstimate": "10",
"remainingEstimate": "5"
},
"environment": "environment",
"description": "description",
"duedate": "2011-03-11",
"customfield_10007": "Epic Name is required."
}
}
'''
def bodyMap= new JsonSlurper().parseText(msg)
println bodyMap
//Url and path
def myClient = new groovyx.net.http.HTTPBuilder('http://'+jiraApiUrl+'issue/')
//Proxy to use Fiddler
myClient.setProxy('localhost', 8888, 'http')
results = myClient.request(POST, JSON) { req ->
req.addHeader('Authorization', basic)
req.addHeader('Content-Type' ,'application/json')
req.addHeader("accept", "application/json");
requestContentType = JSON
body = bodyMap
println req.getAllHeaders()
response.success = { resp, reader ->
println "SUCCESS! ${resp.statusLine}"
}
response.failure = { resp ->
println "FAILURE! ${resp.properties}"
}
}
fredag 14 mars 2014
Groovy HTTPBuilder POST: JIRA API
How to create a Rest client to
Prenumerera på:
Kommentarer till inlägget (Atom)
Inga kommentarer:
Skicka en kommentar