oracle / cordova-plugin-wkwebview-file-xhr

Cordova Plugin for WebView File XHR
Universal Permissive License v1.0
138 stars 120 forks source link

The space lost after the colon in getAllResponseHeaders() #68

Open ewfian opened 3 years ago

ewfian commented 3 years ago

I found that The return value of polyfilled getAllResponseHeaders() will not same as native, it will make some thing broken. I have created a pull request to fix this : https://github.com/oracle/cordova-plugin-wkwebview-file-xhr/pull/67

  1. The origin http header image

  2. Parsed response header image

  3. The return value of polyfilled getAllResponseHeaders() The space lost here image

  4. The FIRST CHAR LOST. Some 3rd libraries like azure-sdk-for-js makes http request by using XMLHttpRequest and parses header by itself just like following code https://github.com/Azure/azure-sdk-for-js/blob/744e51acb755db2c565c71a8856d8d13e6ec345b/sdk/core/core-https/src/xhrHttpsClient.ts#L129 If the return value from the polyfilled function XMLHttpRequest.getAllResponseHeaders() is not keeps the exact same format (Date: Thu, 01 Oct 2020 05:18:27 GMT\r\n) as the original value, some thing will broken. image

image

manish2788 commented 3 years ago

@ewfian We will have look into the issue. We don't accept pull requests for this repository, we will analyse the issue and publish the fix if required. We keep updated on same.

ewfian commented 3 years ago

Thanks for response. Here is the spec of getAllResponseHeaders() : https://xhr.spec.whatwg.org/#the-getallresponseheaders()-method (From https://github.com/Azure/azure-sdk-for-js/issues/11581#issuecomment-701974770)

You can find that followed by header’s value, followed by a 0x0D 0x0A byte pair also need to fix.