Unexpected Flash Security Exception When Using URLLoader

后端 未结 3 1153
挽巷
挽巷 2020-12-19 08:56

What I am trying to accomplish is to upload some binary data, specifically a ByteArray representing a PNG image, to a server using the URLLoader class in conjunction with UR

3条回答
  •  清酒与你
    2020-12-19 09:11

    Just for completeness' sake, here is how I ended up setting up my URLRequest object (everything else stayed the same):

    urlRequest.method = URLRequestMethod.POST;
    urlRequest.data = UploadPostHelper.getPostData('filename', pngFile);
    urlRequest.requestHeaders.push(new URLRequestHeader('Cache-Control', 'no-cache'));
    urlRequest.requestHeaders.push(new URLRequestHeader('Content-Type', 'multipart/form-data; boundary=' + UploadPostHelper.getBoundary()));
    

    The key, as pointed out by evilpenguin, was not to set the contentType property at all but to put it in the header. Using just 'multipart/form-data' however, I got an error on the server side about invalid POST boundaries, so I ended up using a class called UploadPostHelper to create a valid boundary and POST body for file uploads.

    This fixed the mysterious security error (I still don't know why that happened), and the very long waits for uploads.

    It should be noted that the example code for using UploadPostHelper involves setting the contentType property of the URLRequest object, and this apparently works for some people, but not in my case.

提交回复
热议问题