This issue is archived. You can view it, but you can't modify it. Learn more

ExportXMLWordPrintable

      According to the documentation of the plugin, you can define custom headers for requests with a syntax like this one:

      def response = httpRequest customHeaders: [[name: 'foo', value: 'bar']]
      

      The problem arises when you try to use custom headers that use names with non-standard characters. I can't see the way to do something like this:

      def response = httpRequest customHeaders: [["my-custom-header-with-hyphen-separator": "${varName}"]]

      I know I can do it the hard way:

      def headers = new ArrayList<jenkins.plugins.http_request.util.HttpRequestNameValuePair>()
      
      def headerName1 = 'my-custom-header-with-hyphen-separator'
      def varName1 = 'abc'
      
      headers.add(new jenkins.plugins.http_request.util.HttpRequestNameValuePair("${headerName1}","${varName1}"))
      

      However I don't think that's the preferred method as it involves granting certain permissions to scripts.

      Under normal circumstances, I would've expected here to use this kind of syntax:

      def headers = [ "${headerName1}":"${varName1}","${headerName2}": "${varName2}" ]
      

      Pretty much a json object with one or more key/value pairs.

      So, is this possible? is there any alternative syntax that can be used right now to avoid working directly with Java classes?

       

            Assignee:
            Pratik
            Reporter:
            Alfredo Quesada
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: