Firefox not understanding that a variable contains an ArrayBuffer while Chrome does
I have trouble making firefox read a blob, or rather understand a variable contains an ArrayBuffer.
I am experimenting with WebRTC in typescript.
// Create a data Channel for communication
this.gameChannel = this.RtcConnection.createDataChannel('g', gameDataChannelOptions);
// Start listener
this.gameChannel.onmessage = function (event: any)
console.log(event);
The above code is working in chrome, but not in firefox, or rather firefox cannot read the resulting data (or most likely I'm doing something wrong).
Below is the console in chrome and FF, notice that in chrome I am seeing the expected data, while in FF I just get a blob of the expected length, but I cant seem to access it.
How do I get the same result in both browsers?
javascript typescript google-chrome firefox webrtc
add a comment |
I have trouble making firefox read a blob, or rather understand a variable contains an ArrayBuffer.
I am experimenting with WebRTC in typescript.
// Create a data Channel for communication
this.gameChannel = this.RtcConnection.createDataChannel('g', gameDataChannelOptions);
// Start listener
this.gameChannel.onmessage = function (event: any)
console.log(event);
The above code is working in chrome, but not in firefox, or rather firefox cannot read the resulting data (or most likely I'm doing something wrong).
Below is the console in chrome and FF, notice that in chrome I am seeing the expected data, while in FF I just get a blob of the expected length, but I cant seem to access it.
How do I get the same result in both browsers?
javascript typescript google-chrome firefox webrtc
add a comment |
I have trouble making firefox read a blob, or rather understand a variable contains an ArrayBuffer.
I am experimenting with WebRTC in typescript.
// Create a data Channel for communication
this.gameChannel = this.RtcConnection.createDataChannel('g', gameDataChannelOptions);
// Start listener
this.gameChannel.onmessage = function (event: any)
console.log(event);
The above code is working in chrome, but not in firefox, or rather firefox cannot read the resulting data (or most likely I'm doing something wrong).
Below is the console in chrome and FF, notice that in chrome I am seeing the expected data, while in FF I just get a blob of the expected length, but I cant seem to access it.
How do I get the same result in both browsers?
javascript typescript google-chrome firefox webrtc
I have trouble making firefox read a blob, or rather understand a variable contains an ArrayBuffer.
I am experimenting with WebRTC in typescript.
// Create a data Channel for communication
this.gameChannel = this.RtcConnection.createDataChannel('g', gameDataChannelOptions);
// Start listener
this.gameChannel.onmessage = function (event: any)
console.log(event);
The above code is working in chrome, but not in firefox, or rather firefox cannot read the resulting data (or most likely I'm doing something wrong).
Below is the console in chrome and FF, notice that in chrome I am seeing the expected data, while in FF I just get a blob of the expected length, but I cant seem to access it.
How do I get the same result in both browsers?
javascript typescript google-chrome firefox webrtc
javascript typescript google-chrome firefox webrtc
edited Nov 16 '18 at 15:12
JensB
asked Nov 15 '18 at 20:17
JensBJensB
3,37423256
3,37423256
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Set this.gameChannel.binaryType = "arraybuffer"
to make it work.
Firefox is correct, because "blob"
is the default binary type. Pilot error.
Chrome does not yet implement "blob"
, which is probably why it defaults to array buffer. If I set "blob"
in Chrome I get:
Failed to set the 'binaryType' property on 'RTCDataChannel':
Blob support not implemented yet
Unfortunately, this is causing web compatibility issues, as your question demonstrates.
if you upvote this answer please ★ the crbug issue as well!
– jib
Nov 15 '18 at 22:02
This solved it, thank you.
– JensB
Nov 15 '18 at 22:57
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53327281%2ffirefox-not-understanding-that-a-variable-contains-an-arraybuffer-while-chrome-d%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Set this.gameChannel.binaryType = "arraybuffer"
to make it work.
Firefox is correct, because "blob"
is the default binary type. Pilot error.
Chrome does not yet implement "blob"
, which is probably why it defaults to array buffer. If I set "blob"
in Chrome I get:
Failed to set the 'binaryType' property on 'RTCDataChannel':
Blob support not implemented yet
Unfortunately, this is causing web compatibility issues, as your question demonstrates.
if you upvote this answer please ★ the crbug issue as well!
– jib
Nov 15 '18 at 22:02
This solved it, thank you.
– JensB
Nov 15 '18 at 22:57
add a comment |
Set this.gameChannel.binaryType = "arraybuffer"
to make it work.
Firefox is correct, because "blob"
is the default binary type. Pilot error.
Chrome does not yet implement "blob"
, which is probably why it defaults to array buffer. If I set "blob"
in Chrome I get:
Failed to set the 'binaryType' property on 'RTCDataChannel':
Blob support not implemented yet
Unfortunately, this is causing web compatibility issues, as your question demonstrates.
if you upvote this answer please ★ the crbug issue as well!
– jib
Nov 15 '18 at 22:02
This solved it, thank you.
– JensB
Nov 15 '18 at 22:57
add a comment |
Set this.gameChannel.binaryType = "arraybuffer"
to make it work.
Firefox is correct, because "blob"
is the default binary type. Pilot error.
Chrome does not yet implement "blob"
, which is probably why it defaults to array buffer. If I set "blob"
in Chrome I get:
Failed to set the 'binaryType' property on 'RTCDataChannel':
Blob support not implemented yet
Unfortunately, this is causing web compatibility issues, as your question demonstrates.
Set this.gameChannel.binaryType = "arraybuffer"
to make it work.
Firefox is correct, because "blob"
is the default binary type. Pilot error.
Chrome does not yet implement "blob"
, which is probably why it defaults to array buffer. If I set "blob"
in Chrome I get:
Failed to set the 'binaryType' property on 'RTCDataChannel':
Blob support not implemented yet
Unfortunately, this is causing web compatibility issues, as your question demonstrates.
edited Nov 15 '18 at 22:13
answered Nov 15 '18 at 21:54
jibjib
21.8k64694
21.8k64694
if you upvote this answer please ★ the crbug issue as well!
– jib
Nov 15 '18 at 22:02
This solved it, thank you.
– JensB
Nov 15 '18 at 22:57
add a comment |
if you upvote this answer please ★ the crbug issue as well!
– jib
Nov 15 '18 at 22:02
This solved it, thank you.
– JensB
Nov 15 '18 at 22:57
if you upvote this answer please ★ the crbug issue as well!
– jib
Nov 15 '18 at 22:02
if you upvote this answer please ★ the crbug issue as well!
– jib
Nov 15 '18 at 22:02
This solved it, thank you.
– JensB
Nov 15 '18 at 22:57
This solved it, thank you.
– JensB
Nov 15 '18 at 22:57
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53327281%2ffirefox-not-understanding-that-a-variable-contains-an-arraybuffer-while-chrome-d%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown