ਪੂਰਾ ਹੋਇਆ CONNECT ਸਾਕਟ ssh2-sftp-client ਨੂੰ ਸੌਂਪੋ
ਪ੍ਰਾਕਸੀ ਹੈਡਰਾਂ ਤੋਂ ਬਾਅਦ ਪਹਿਲਾਂ ਹੀ ਬਫਰ ਵਿੱਚ ਪਏ SSH ਸੁਆਗਤ ਨੂੰ ਸੰਭਾਲੋ, ਫਿਰ ਮੰਜ਼ਿਲ ਦੇ ਆਮ SSH ਵਿਕਲਪਾਂ ਨਾਲ sock ਵਰਤੋ।
import SftpClient from 'ssh2-sftp-client';
const client = new SftpClient();
await client.connect({
...sshOptions,
sock: tunnelSocket,
});ਮੌਜੂਦਾ ਮੰਜ਼ਿਲ ਹੋਸਟ, ਪੋਰਟ, ਖਾਤਾ ਅਤੇ ਹੋਸਟ-ਕੀ ਨੀਤੀ sshOptions ਵਿੱਚ ਦਿਓ। ਸਾਕਟ ਨੂੰ ਪਹਿਲਾਂ ਹੀ ਸਵੀਕਾਰ ਕੀਤੀ CONNECT ਸੁਰੰਗ ਰਾਹੀਂ ਉਸ ਮੰਜ਼ਿਲ ਤੱਕ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ, ਸਿਰਫ਼ ਪ੍ਰਾਕਸੀ ਸਰੋਤੇ ਤੱਕ ਨਹੀਂ।
ਸਟ੍ਰੀਮ ਸੌਂਪਣ ਤੋਂ ਪਹਿਲਾਂ ਹੈਲਪਰ ਦੀ ਜਾਂਚ ਕਰੋ: 407 ਜਾਂ ਹੋਰ ਅਸਫਲ ਜਵਾਬ ਰੱਦ ਕਰੋ, ਸੈਟਅਪ ਸਮਾਂ-ਸੀਮਾਵਾਂ ਕਾਇਮ ਰੱਖੋ ਅਤੇ ਰੱਦ ਕੀਤੇ ਸਾਕਟ ਬੰਦ ਕਰੋ। Node ਦੀ HTTP connect ਘਟਨਾ ਵਿੱਚ ਹੈਡਰਾਂ ਤੋਂ ਬਾਅਦ ਪਹਿਲਾਂ ਹੀ ਪੜ੍ਹੇ ਗਏ head ਬਾਈਟ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ; ਢੁਕਵੇਂ ਸਟ੍ਰੀਮ ਹੈਂਡਓਫ ਨਾਲ ਖਾਲੀ ਨਾ ਹੋਣ ਵਾਲਾ ਬਫਰ ਰੱਖੋ, ਜਿਵੇਂ socket.unshift(head)। ਇਸ ਵਿੱਚ SSH ਸੁਆਗਤ ਹੋ ਸਕਦਾ ਹੈ।
ਸਾਕਟ ਤੁਰੰਤ ਸੌਂਪੋ, ਫਿਰ ਪੂਰਾ ਹੋਇਆ SFTP ਕੰਮ await client.end() ਨਾਲ ਬੰਦ ਕਰੋ। ਕਿਸੇ ਹੋਰ ਥਾਂ ਦਾ HTTP Agent ਇਹ SSH ਢੋਆ-ਢੁਆਈ ਨਹੀਂ ਬਣਾਉਂਦਾ, ਅਤੇ CONNECT ਖਾਤਾ SSH ਖਾਤੇ ਤੋਂ ਵੱਖਰਾ ਹੈ।