Joplin behind a Proxy Server

Is it possible to get Jopin to work behind a Proxy Server (WEBDAV)?
Also Update does not work

Version:
Joplin 1.7.11 (prod, win32)
Client-ID: 5aa921d49ab344ad8a7ef2d3aed51e4f
Sync-Version: 2
Profil-Version: 34
Unterstützter Schlüsselbund: Ja
Revision: f560563d8 (master)

System: Windows10

I set http_proxy and https_proxy

I get at sync:

2021-02-26 10:51:49: "FetchError: request to https://mediacenter.gmx.net/Joplin/info.json failed, reason: getaddrinfo ENOTFOUND mediacenter.gmx.net
Code: ENOTFOUND
at ClientRequest. (C:\Users\MarioEdelmann\AppData\Local\Programs\Joplin\resources\app.asar\node_modules@joplin\lib\node_modules\node-fetch\index.js:133:11)
at ClientRequest.emit (events.js:310:20)
at ClientRequest.EventEmitter.emit (domain.js:482:12)
at TLSSocket.socketErrorListener (_http_client.js:426:9)
at TLSSocket.emit (events.js:310:20)
at TLSSocket.EventEmitter.emit (domain.js:482:12)
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
at processTicksAndRejections (internal/process/task_queues.js:84:21)"

I get at update:

request to https://api.github.com/repos/laurent22/joplin/releases/latest failed, reason:
getaddrinfo ENOTFOUND api.github.com

Where did you set that?

Joplin uses the node-fetch module to handle requests. I don't think that this module supports proxies.

On another note, we tried to add proxy functionality into Joplin, but the modules either did not support https or http2.
In fact I don't think h2 is working in node-fetch either.
I wish there was a proper request library that handles h2, https, proxying, ... Unfortunately there isn't one for node - at least I haven't found one yet.

I try to connect on a computer at work. It is behind a Proxy. It allows port 80 and 443. The connection to mediacenter works in the explorer. I set it in a batch file to start joplin.

I'm not sure why setting something in a batch file should make a SW proxy aware.

The http/https/http2 implementations in node are a mess. e.g. for h2 you specifically have to use a separate class. What? So how does someone write code that uses h2 if it's available and http/1.1 otherwise. Proxying is a similar mess.
e.g. the sync operations on my Android and iPad are a lot faster (probably twice as fast), because they use h2 via the native OS IP stack. The desktop app uses node-fetch, which still has no h2 implementation and they argue to use a h2 wrapper instead (which apparently does not support http1). As I said - a mess.

I don't even want to start with proxying. Most of the proxy modules don't even mention user credentials. So now what? Should we add proxy support that people can't use when their proxy requires users credentials? The ones that do mention user credentials are not transparent and have a similar issue as I described with h2 above.

Is there a way with a special program to get this working.
Example:
Joplin -> program -> proxy -> mediacenter

Try cntlm

Try Proxifier (for a fee)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.