MCPcopy
hub / github.com/ampproject/amphtml / deserializeMessage

Function deserializeMessage

src/core/3p-frame-messaging.js:96–110  ·  view source on GitHub ↗
(message)

Source from the content-addressed store, hash-verified

94 * @return {?JsonObject|undefined}
95 */
96export function deserializeMessage(message) {
97 if (!isAmpMessage(message)) {
98 return null;
99 }
100
101 devAssertString(message);
102
103 const startPos = message.indexOf('{');
104 devAssert(startPos != -1, 'JSON missing in %s', message);
105 return tryParseJson(message.substr(startPos), (e) => {
106 rethrowAsync(
107 new Error(`MESSAGING: Failed to parse message: ${message}\n${e.message}`)
108 );
109 });
110}
111
112/**
113 * Returns true if message looks like it is an AMP postMessage

Callers 14

setupEventListener_Method · 0.90
test-3p-frame.jsFile · 0.90
parseIfNeededFunction · 0.90
component.jsFile · 0.90
RedditWithRefFunction · 0.90
component.jsFile · 0.90
processMessageMethod · 0.90
BentoEmbedlyCardWithRefFunction · 0.90
BentoGistFunction · 0.90

Calls 5

devAssertStringFunction · 0.90
devAssertFunction · 0.90
tryParseJsonFunction · 0.90
rethrowAsyncFunction · 0.90
isAmpMessageFunction · 0.85

Tested by

no test coverage detected