Didn't seem to have an effect when I supplied header: {} to the Request.JSON constructor, but I'll try the method you kindly suggested.

On 09/08/2011 15:40, Philip Thompson wrote:
In the meantime, can't you set your own headers?

http://mootools.net/docs/core/Request/Request#Request:setHeader

~Philip


On Tue, Aug 9, 2011 at 1:27 AM, Lee <[email protected] <mailto:[email protected]>> wrote:

    It s a problem because it is wrong.

    My server is checking POST data and behaving as it ought to, ie
    looking for the XML....




    On 08/08/2011 22:30, Aaron Newton wrote:

        I don't see how that creates a problem though. Request doesn't
        check to see what the headers the server responds with.

        On Mon, Aug 8, 2011 at 11:40 AM, Lee <[email protected]
        <mailto:[email protected]> <mailto:[email protected]
        <mailto:[email protected]>>> wrote:

           Thanks, Aaron. The problem isn't the request headers, or the
           server, but that the content-type is set to
        application/xml, when
           the content body is not XML.


           On 08/08/2011 18:25, Aaron Newton wrote:

               As you can see, Request.JSON sets the Accept/X-Request
        headers
               itself, manually (i.e. they are not options):

        
https://github.com/mootools/mootools-core/blob/master/Source/Request/Request.JSON.js#L28

               But any other headers you wish to set may be specified
        in the
               options.

               Regardless, if your server responds with json data, even of
               the content type is not application/json, the Request.JSON
               attempts to send that data through JSON.decode and
        should work.

               On Mon, Aug 8, 2011 at 10:14 AM, Lee <[email protected]
        <mailto:[email protected]>
        <mailto:[email protected] <mailto:[email protected]>>
        <mailto:[email protected] <mailto:[email protected]>

        <mailto:[email protected] <mailto:[email protected]>>>> wrote:

                  No ideas?  Should I file a bug report?

                  On 04/08/2011 13:49, Lee wrote:

                      Thanks for your reply.

                      Accept header relate to that which the client is
        able, and
                      prefers, to
                      accept. The content-type header is used to
        describe the
                      content of the
                      media entity being transmitted. You can see its
        use most
                      plainly in
                      uploading images to a server.

                      My problem is that a JSON request is being sent
        with a
                      content-type
                      that describes an XML document, when no XML
        document is
               being
                      sent. I
                      would like to override this, and it is not possible.

                      I presume this originates with the HTTP XML
        Request object,
                      but do not
                      know Mootools core to address the issue, so I
        thought
               I'd post
                      here.

                      Just to be clear, the problem has nothing to do
        with the
                      server, which
                      is correctly responding to JSON.Request's
        declaration
               that it
                      has sent
                      an HTTP request entity of with a media described
        by the
                      content type
                      header of 'application/xml'.

                      Thanks
                      lee


                      On Aug 4, 10:26 am, Arian
        Stolwijk<[email protected] <mailto:[email protected]>
        <mailto:[email protected] <mailto:[email protected]>>
        <mailto:[email protected] <mailto:[email protected]>
        <mailto:[email protected] <mailto:[email protected]>>>>  wrote:



                          Content-Type is to serve data, your server
        should check
                          the Accept and
                          X-Request headers. If that's
        application/json it should
                          return a response
                          with the Content-Type as application/json too.

                          In the Net tab of firebug or the Network tab
        of webkit
                          inspector you can see
                          the Request headers, which you set with the
        headers
                          option, and the response
                          headers, response content and more.

                          On Thu, Aug 4, 2011 at 9:45 AM,
               Lee<[email protected] <mailto:[email protected]>
        <mailto:[email protected] <mailto:[email protected]>>
        <mailto:[email protected] <mailto:[email protected]>
        <mailto:[email protected] <mailto:[email protected]>>>>  wrote:



                              Hello list,
                              new Request.JSON({
                                     url:            this.serverSideUri,
                                     method: 'OPTIONS',
                                     async:  true,
                                     emulation:      false
                              }).send();
                              Firebug doesn't tell me anything about this
               request,
                              only the
                              response, which I am generating.
                              Problem seems to be that my server
        (Apache 2)
               sees the
                              request's
                              content-type headers as application/xml.
                              I have tried adding content-type headers
        to the
                              request, to no avail -
                              it would be good for me, at least, if any
               parameter I
                              pass Request
                              clases overrode those the class itself
        defines
               for the
                              request.
                                     // All ineffective:
                                     headers:        {
                                             'content-type' :
        'application/json',
                                             'contentType' :
        'application/json',
                                             'Content-Type' :
        'application/json',
                                     }
                              Do you want me to post this somewhere else?
                              Thanks
                              Lee

--
http://lonestarlightandsound.com/

Reply via email to