Comments (4)
Can replicate, looks like a replay issue? Moving to ReplayWebpage.
from replayweb.page.
Took a quick look. This may actually be a capture issue under the hood - there is an empty POST request that is being incorrectly recorded as a GET request. However, there may be also additional issues on top of that.
from replayweb.page.
sigh oops. This is the https://robertsspaceindustries.com/api/starmap/bootup
404? Seems to be within the WACZ I made. Unsure about the request type though.
from replayweb.page.
This is fixable but involves not 1 but 2 tricky edge case scenarios:
-
When storing a POST request with no/empty body, ArchiveWeb.page actually just treats it as a GET request, because the body is missing. However, ReplayWeb.page attempts to match it as a POST request. This should be addressed by either changing ArchiveWeb.page, or changing ReplayWeb.page to behave the same way (if no POST data, even though a POST request is made, just treat it as a GET, and not look for &__wb_method=POST query arg).
-
The site uses an
<object>
tag for SVG rendering, however,<object>
tag don't work well with service workers (see: w3c/ServiceWorker#249). The best option is to actually rewrite an<object>
tag to an iframe if the type isimage/svg+xml
. We also want the same behavior for PDFs, already partially implemented. For server side rewriting, can just replace<object>
-><iframe>
if thetype
attribute matches. However, it becomes a bit more tricky when the element is created dynamically and events are added, eg:
const element = document.createElement("object")
element.type = "image/svg+xml";
element.addEventListener("load", ...)
We need a way to create either an <object>
or an <iframe>
based on the object type, but it is set later, so can't determine it in createElement. Replacing the element later is also tricky, as calling code will be pointing to a dead element.
In testing, when forcing all object -> iframe, this works, but this may break other things (eg. if is a flash, etc..). A possible workaround may be to create some intermediate proxy object, and actually create an object or iframe when appendChild() is called...
Just forcing the object to iframe does result in a working replay:
from replayweb.page.
Related Issues (20)
- [Feature]: Change image-rendering mode based on snapshot date
- RWP: tab list disappears when opening an empty WARC file HOT 1
- [Docs]: WBN is listed in the placeholder text instructing users what files to open but isn't supported HOT 1
- ReplayWebpage Branding Update
- [Replay Bug]: Facebook archive content display partial in replayweb page HOT 2
- replay of timed transitions in hero elements or carousels HOT 2
- [Replay Bug]: Players not rendering Scalar crawls in Chrome HOT 1
- [Feature]: Adblock Support!
- [Replay Bug]: archived reddit pages not displaying properly HOT 2
- [Bug]: Firefox Won't Open WACZ from Remote Server because the Size of the File is Not Accessible HOT 2
- [Change]: ReplayWeb.page App download link in README.md is broken HOT 1
- [Replay Bug]: Encoding of URL parameter §ion to Β§ion prevents page from being displayed HOT 3
- [Replay Bug]: Ebay carousels broken HOT 1
- [Feature]: Add Size Limit for local file picker when loading WARC or local file-system based WACZ loading.
- [Replay Bug]: When I open a specific archive, the software becomes unresponsive and turns white HOT 1
- [Replay Bug]: Browser Crashing & Embedded Video Issues for Arc GIS Storymaps HOT 1
- [Feature]: Additional navigation events for embeds
- [Feature]: Make package exports explicit
- [Replay Bug]: ReplayWeb.page Appimage isnt replying edx.org contents correctly HOT 1
- [Replay Bug]: a specific website couldn't replay properly
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from replayweb.page.