Provided answer need some more details regarding authentication with qlik server
I'm trying to connect to qlik
using certificates through WebSockets.
Error:
websocket._exceptions.WebSocketProxyException: failed CONNECT via proxy status: 503
Code:
from websocket import create_connection
import ssl
senseHost = "dummy.xyz.com"
privateKeyPath = "C:\\ProgramData\\Qlik\\Sense\\Repository\\Exported Certificates\\"
## userDirectory and userId can be found at QMC -> Users
userDirectory, userId = "DIRECTORY_OF_SERVER","QlikServerUserId"
url = "wss://" + senseHost + ":4747/app/" # valid
certs = ({"ca_certs": privateKeyPath + "root.pem",
"certfile": privateKeyPath + "client.pem",
"keyfile": privateKeyPath + "client_key.pem",
"cert_reqs":ssl.CERT_REQUIRED,
"server_side": False
})
ssl.match_hostname = lambda cert, hostname: True
ws = create_connection(url, sslopt=certs,
http_proxy_host="xyz.corp.company.com",
http_proxy_port="80",
http_no_proxy="*.corp.company.com;*.abc.com;*.pqr.com;"
header={'X-Qlik-User: UserDirectory=%s; UserId=%s'% (userDirectory, userId)})
session = self.ws.recv()
*Note:
- My network has a proxy.
- I have used the right values in every field like
sensehost, userDirectory, userId
Please help or any suggestions can be appreciated to connect qlik.
Final aim: To get Qlik KPI values/charts into fronted developed by django dynamically!
"
if I didn't use space. Can you tell is there any other way for that escape character? – Piffle\\
is sufficient. It won't take the quote when it's doubled. – Cockiness"\\ root.pem"
instead of "\\root.pem" which is probably what you wanted... – Rainger(which is present in manual proxy setup)
. If I used outside of the proxy I'm gettingwebsocket._exceptions.WebSocketAddressException: [Errno 11001] getaddrinfo failed
error. – Piffle