[ https://issues.apache.org/jira/browse/GUACAMOLE-1842?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dmitry Kutin updated GUACAMOLE-1842: ------------------------------------ Description: When using an _*HTTPTunnel*_ in _guacamole-common-js_ to interact with a cross-domain _guacamole-server_ instance, the tunnel abruptly closes after being assigned a UUID with the status code _{*}UPSTREAM_NOT_FOUND{*},_ and no additional message. After having looked through the _guacamole-common-js_ source, the closed tunnel was triggered due to the _*XMLHttpRequest*_ library's *_getResponseHeader_* method not having access to custom headers for CORS requests unless they were explicitly included in an *_Access-Control-Expose-Headers_* header: {code:java} Access-Control-Expose-Headers: Guacamole-Tunnel-Token{code} My proposal is to include this either in the plugin as a more descriptive error message, or in the documentation for users who may encounter the same. Using the status code *UPSTREAM_NOT_FOUND* without additional context seems misleading in this case. was: When using an _*HTTPTunnel*_ in _guacamole-common-js_ to interact with a cross-domain _guacamole-server_ instance, the tunnel abruptly closes after being assigned a UUID with the status code _{*}UPSTREAM_NOT_FOUND{*},_ and no additional message. After having looked through the plugin _guacamole-common-js_ source, the closed tunnel was triggered due to the _*XMLHttpRequest*_ library's *_getResponseHeader_* method not having access to custom headers for CORS requests unless they were explicitly included in an *_Access-Control-Expose-Headers_* header: {code:java} Access-Control-Expose-Headers: Guacamole-Tunnel-Token{code} My proposal is to include this either in the plugin as a more descriptive error message, or in the documentation for users who may encounter the same. Using the status code *UPSTREAM_NOT_FOUND* without additional context seems misleading in this case. > Include a more descriptive message on tunnel close due to missing header on > CORS > -------------------------------------------------------------------------------- > > Key: GUACAMOLE-1842 > URL: https://issues.apache.org/jira/browse/GUACAMOLE-1842 > Project: Guacamole > Issue Type: Improvement > Components: guacamole-common-js > Reporter: Dmitry Kutin > Priority: Minor > Original Estimate: 1h > Remaining Estimate: 1h > > When using an _*HTTPTunnel*_ in _guacamole-common-js_ to interact with a > cross-domain _guacamole-server_ instance, the tunnel abruptly closes after > being assigned a UUID with the status code _{*}UPSTREAM_NOT_FOUND{*},_ and no > additional message. > After having looked through the _guacamole-common-js_ source, the closed > tunnel was triggered due to the _*XMLHttpRequest*_ library's > *_getResponseHeader_* method not having access to custom headers for CORS > requests unless they were explicitly included in an > *_Access-Control-Expose-Headers_* header: > > {code:java} > Access-Control-Expose-Headers: Guacamole-Tunnel-Token{code} > > My proposal is to include this either in the plugin as a more descriptive > error message, or in the documentation for users who may encounter the same. > Using the status code *UPSTREAM_NOT_FOUND* without additional context seems > misleading in this case. -- This message was sent by Atlassian Jira (v8.20.10#820010)