FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Updated WebAgg JS to check and send request over wss if using HTTPS by whyvra · Pull Request #25039 · matplotlib/matplotlib · GitHub

Repository navigation

Updated WebAgg JS to check and send request over wss if using HTTPS - #25039

Merged
ksunden merged 1 commit into
matplotlib:mainfrom
whyvra:fix/update_webagg_js
Jan 25, 2023
Merged

ksunden merged 1 commit into
matplotlib:mainfrom
whyvra:fix/update_webagg_js

Conversation

whyvra commented Jan 20, 2023

Copy link
Copy Markdown
Contributor

PR Summary

Added a small change to the JavaScript for the WebAgg backend. The added JavaScript code will check the protocol and updated the websocket uri to wss: if https: is being used.

This is to fix an issue with matplotlib running behind a reverse proxy that adds HTTPS and secure HTTP headers like HSTS. The connection to the insecure websocket i.e. ws: is blocked by the browser with the message:

Mixed Content: The page at 'https:/<some_website>/' was loaded over HTTPS,  but attempted to connect to the insecure 
WebSocket endpoint 'ws://<some_website>/1/ws'. This request has been blocked; this endpoint must be available over WSS.

PR Checklist

Documentation and Tests

  • Has pytest style unit tests (and pytest passes) N/A
  • Documentation is sphinx and numpydoc compliant (the docs should build without error). N/A
  • New plotting related features are documented with examples. N/A

Release Notes

  • New features are marked with a .. versionadded:: directive in the docstring and documented in doc/users/next_whats_new/ N/A
  • API changes are marked with a .. versionchanged:: directive in the docstring and documented in doc/api/next_api_changes/ N/A
  • Release notes conform with instructions in next_whats_new/README.rst or next_api_changes/README.rst N/A

Not sure whether or not I need to update any documentation, so please let me know if I do.

Thank you

github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Thank you for opening your first PR into Matplotlib!

If you have not heard from us in a while, please feel free to ping @matplotlib/developers or anyone who has commented on the PR. Most of our reviewers are volunteers and sometimes things fall through the cracks.

You can also join us on gitter for real-time discussion.

For details on testing, writing docs, and our review process, please see the developer guide

We strive to be a welcoming and open project. Please follow our Code of Conduct.

Copy link
Copy Markdown
Member

On its face this looks reasonable to me, but I have no idea how to test it.

rcomer linked an issue Jan 20, 2023 that may be closed by this pull request

whyvra commented Jan 20, 2023

Copy link
Copy Markdown
Contributor Author

@tacaswell I created a repo that uses a Docker image to reproduce the issue and test the updated JS.

You can find it here https://github.com/whyvra/matplotlib-sample.

Please let me know if you need more info on anything.

Cheers

QuLogic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I confirmed this worked with a Caddy reverse proxy.

QuLogic added this to the v3.7.0 milestone Jan 21, 2023
ksunden merged commit 66f7956 into matplotlib:main Jan 25, 2023
meeseeksmachine pushed a commit to meeseeksmachine/matplotlib that referenced this pull request Jan 25, 2023
QuLogic added a commit that referenced this pull request Jan 25, 2023
…039-on-v3.7.x

Backport PR #25039 on branch v3.7.x (Updated WebAgg JS to check and send request over wss if using HTTPS)
ksunden mentioned this pull request Feb 20, 2023
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Development

Successfully merging this pull request may close these issues.

[Bug]: Request to insecure websocket endpoint is blocked by browser

4 participants


Back | FazBrowse Home | New Git URL