Thanks for your reply, I’ll dive into the official guacamole client source code 
for the details.


> On Dec 29, 2022, at 11:50, Nick Couchman <[email protected]> wrote:
> 
> On Wed, Dec 28, 2022 at 8:25 PM 陈鹏鹏 <[email protected]> wrote:
>> 
>> Hello,
>> 
>> I build a web app with guacamole-common and guacamole-common-js, everything 
>> works fine, but I cannot find any spec or doc to tell how to use sftp in the 
>> web app, could you please help to figure out the doc or example? Thank you.
> 
> The best example is the guacamole-client web application itself.
> However, it's important to note that the web client itself has no real
> concept of it being an "SFTP connection" - this is all taken care of
> by guacd, and guacd simply presents an abstracted filesystem to the
> web client. This allows the same code on the web client to be used for
> both SFTP and RDP drive redirection, and any other future file
> transfer mechanisms. In the guacamole-common-js code, there is a
> callback for handling filesystem registrations:
> 
> https://github.com/apache/guacamole-client/blob/c2f2defcba73ad7ad1e5c6608a3d7b91a11313c9/guacamole-common-js/src/main/webapp/modules/Client.js#L815-L827
> 
> If you want to make a SFTP filesystem available, you'll need to
> implement this callback in your client. Examples of how that is done
> can be found in the main web client:
> https://github.com/apache/guacamole-client/blob/master/guacamole/src/main/frontend/src/app/client/types/ManagedClient.js
> https://github.com/apache/guacamole-client/blob/master/guacamole/src/main/frontend/src/app/client/controllers/clientController.js
> 
> The individual components are implemented in various places in the web client:
> 
> https://github.com/apache/guacamole-client/blob/master/guacamole/src/main/frontend/src/app/client/types/ManagedFilesystem.js
> https://github.com/apache/guacamole-client/blob/master/guacamole/src/main/frontend/src/app/client/directives/guacFileBrowser.js
> https://github.com/apache/guacamole-client/blob/master/guacamole/src/main/frontend/src/app/client/directives/guacFileTransfer.js
> https://github.com/apache/guacamole-client/blob/master/guacamole/src/main/frontend/src/app/client/directives/guacFileTransferManager.js
> 
> Your implementation need not be as complex as the Guacamole Client,
> but you'll at least need to implement the callback and then some set
> of handlers to deal with file transfer events, object listings, etc.
> 
> -Nick
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to