Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing UTF-8 Characters #8

Open
GoogleCodeExporter opened this issue Mar 22, 2016 · 3 comments
Open

Missing UTF-8 Characters #8

GoogleCodeExporter opened this issue Mar 22, 2016 · 3 comments

Comments

@GoogleCodeExporter
Copy link

Using jSocket from the browser, I send "green\u0000yellow" and expect 
"green\u0000yellow", or "green\x00yellow" at the server.php, however, I receive 
"green\x0r\x0writ" (php); i.e. html entities: 
"green�r�writ" See: 
http://www.utf8-chartable.de/unicode-utf8-table.pl?number=1024&unicodeinhtml=dec
&htmlent=1

What steps will reproduce the problem?

1) Setup the jsocket sample (samples/client/example/example.html) and the 
http://code.google.com/p/jsocket/source/browse/trunk/jsocket/samples/server/php/
server.php

2) Replace mySocket.write("GET / HTTP/1.1\r\n\r\n"); with
mySocket.write("green\u0000yellow");

3) The server.php code should receive "green\x0yellow", however the data 
becomes (php) "green\x0r\x0writ"

What version of the product are you using? On what operating system?
Version: svn:r132

I have also tried the writeUTFBytes and writeUTF functions.


Original issue reported on code.google.com by erik.hal...@gmail.com on 25 Jul 2010 at 3:59

@GoogleCodeExporter
Copy link
Author

Interesting, I am not aware of jsocket making any changes to the data it sends 
or receives, so it may just be a javascript/flash or php antic, but ill have a 
look at it tomorrow. Thanks for reporting this issue.

Original comment by aidamina on 28 Jul 2010 at 11:25

@GoogleCodeExporter
Copy link
Author

[deleted comment]

@GoogleCodeExporter
Copy link
Author

This is not a problem with jsocket. jsocket uses FABrige.js (FB) which uses XML 
to transfer javascript objects between actionscript (as3) and javascript. Only 
valid XML characters are allowed. In addition, FB does not transfer all 
javascript base types properly. Here is an example:

var o={};
o['my-id']=green;

This code will crash an as3 ExternalInterface.call('some function',o).

The only way I know of transferring binary objects and strings through FB 
and/or using ExternalInterface is to serialize the base type using JSON and 
then use Base64 encoding. Reverse the serialization on the other end.

In addition, encodeURIComponent and escape top level functions will not work 
either for all valid UTF-16 characters which javascript and actionscript use.

I recommend this issue be closed.

Original comment by erik.hal...@gmail.com on 12 Aug 2010 at 4:53

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant