With all due respect, I believe that the Bokon answer does not make sense. The immediate cause of the message you receive is most likely the javascript postMessage
method. It is used to link your site with the object returned by window.open
or the embedded iframe
website.
window.parent.postMessage(message, targetOrigin);
You can look at this article to find out how it works.
According to the MDN link, the first argument to the postMessage
method can be of any type. However, prior to Gecko 6.0 (Firefox 6.0 / Thunderbird 6.0 / SeaMonkey 2.3), the message parameter must be a string .
I tested the method in Chrome 28.0.1500.72 (the latest version when writing this answer), and it works great when transferring an object, but still gives a warning message to the console. I think facebook feels uncomfortable with passing some rich data as a string, so they pass it as an object and just don't care about this warning. Or, since there is a workaround (e.g. JSON.stringify
), they have an error that they are not aware of.
source share