HTTPBuilder définir demande contenttype

J'utilise le code suivant pour exécuter un HTTP POST vers un système externe. Le problème est que le système externe obtient toujours un 'null' type de contenu lorsque vous utilisez le code ci-dessous. Est-il un moyen de régler le contenttype lors de l'utilisation de HTTPBuilder.

J'ai essayé d'autres outils pour exécuter la même requête, mais alors le système distant reçoit une bonne contentType ('application/json').

    def execute(String baseUrl, String path, Map requestHeaders=[:], Map query=[:], method = Method.POST) {
    try {
        def http = new HTTPBuilder(baseUrl)
        def result = null

        //perform a ${method} request, expecting TEXT response
        http.request(method, ContentType.JSON) {
            uri.path = path
            uri.query = query

            //add possible headers
            requestHeaders.each { key, value ->
                headers."${key}" = "${value}"
            }

            //response handler for a success response code
            response.success = { resp, reader ->
                result = reader.getText()
            }
        }
        return result
    } catch (groovyx.net.http.HttpResponseException ex) {
        ex.printStackTrace()
        return null
    } catch (java.net.ConnectException ex) {
        ex.printStackTrace()
        return null
    }
}
Il semble que vous êtes en train de faire. Est-il une chance de votre carte paramètre requestHeaders pourrait être la réinitialisation Content-Type clé?
Nope, j'ai enlevé les lignes, mais encore de la télécommande, le système devient un 'null', comme contentType

OriginalL'auteur Marco | 2013-02-25