[ https://issues.apache.org/jira/browse/THRIFT-4145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Håkon Hitland updated THRIFT-4145: ---------------------------------- Priority: Minor (was: Major) > XHRConnection does not handle binary protocols > ---------------------------------------------- > > Key: THRIFT-4145 > URL: https://issues.apache.org/jira/browse/THRIFT-4145 > Project: Thrift > Issue Type: Bug > Components: Node.js - Library > Reporter: Håkon Hitland > Priority: Minor > > Trying to use the binary protocol with XHRConnection results in a "Bad > version in readMessageBegin" error message. > It looks like the response body undergoes a ISO-8859-to-UTF8 conversion > before being parsed as bytes. > There is already code for handling ArrayBuffers, but I don't see a way to > trigger it. > It seems to work with two changes: > - set xreq.responseType = 'arraybuffer' somewhere in > XHRConnection.prototype.flush > - call "self.setRecvBuffer(this.response);" instead of > "self.setRecvBuffer(this.responseText);" in the callabck. > I have not tested how this affects the JSONProtocol. If it has to use text, > maybe each protocol should provide their media type as defined in THRIFT-3250 > so XHRConnection can use the right content type and do any required special > case. -- This message was sent by Atlassian JIRA (v6.3.15#6346)