I have transmission-daemon which is listening on localhost. In order to access it i have this configuration in nginx:
Nginx is also configured for http2. In this case Remote Transmission++ is unable to connect to transmission. Problem is that extension expects in fail function errorThrown==='Conflict' but with http2 this string is empty. I made a small patch in order to resolve this:
--- background.js.orig 2018-01-25 04:42:59.000000000 +0200
+++ background.js 2023-09-01 15:16:16.963952091 +0300
@@ -62,7 +62,7 @@
}
})
.fail(function (jqXHR, textStatus, errorThrown) {
- if (errorThrown === 'Conflict') {
+ if (errorThrown === 'Conflict'|| jqXHR.status==409) {
// X-Transmission-Session-Id should only be included if we didn't include it when we sent our request
let xSid = jqXHR.getResponseHeader('X-Transmission-Session-Id');
localStorage.sessionId = xSid;
And now everything is fine. This patch should also preserve the original behavior with HTTP1.1
If you find this useful please include it in the next release.