Look, today finally solved this problem, before has been very strange bug, as long as the Window system involves encryption this piece, there will always be this problem, such as crypto, wechat pay, Alipay pay.. Google could not find any answer, but it was no problem when deployed to Linux, so the following operations were synchronized to the server for modification, and this time encountered this problem to solve it for him.
Error message:
**
Error: error:25078067:DSO support routines:win32_load:could not load the shared library at Sign.sign (the node: internal/crypto/sig: 131:29) at the Object. The sign (project path/node_modules/alipay - SDK \ lib \ util js: 94:34) at AlipaySdk. PageExec (item path \node_modules\ Alipay - SDK \lib\ Alipay. Js :168:33) at alipaysdK.exec (item path \node_modules\ Alipay - SDK \lib\ Alipay. Js :263:25) at createOrder (item path \createOrder.js:46:37) at asyncCreate (item path \server.js:47:30) at item path \server.js:50:5 at layer.handle [as handle_request] (item path \node_modules\express\lib\router\layer.js:95:5) at next (item path \node_modules\express\lib\router\route.js:137:13) at next (item path \node_modules\express\lib\router\route.js:137:13) at next (item path \node_modules\express\lib\router\route.js:137:13) at next Route.dispatch (item path \node_modules\express\lib\router\route.js:112:3) {opensslErrorStack: [ 'error:0E076071:configuration file routines:module_run:unknown module name', 'error:0E07506E:configuration file routines:module_load_dso:error loading dso', 'error:25070067:DSO support routines:DSO_load:could not load the shared library' ], library: 'DSO support routines', function: 'win32_load', reason: 'could not load the shared library', code: 'ERR_OSSL_DSO_COULD_NOT_LOAD_THE_SHARED_LIBRARY' }Copy the code
Why did it go wrong: I downloaded the openSSL installation package from the official website to install it because I needed to pack the key file earlier, but I didn’t use it anymore and left it there without uninstalling it
Because alipay and wechat payment access will use the crypto library, this library will call the system openSSL to compile? But there may be a problem with my own installation or the version is not correct, so it cannot be called.
Solutions:
- If OpenSSL is already installed on the system, how can I determine if it is already installed? Uninstall, or delete, system environment variables (find OpenSSL)
- Install Git.
- Adding system environment variables (Path)
**
Git installation directory \usr\bin For example, D:\System\ git \usr\binCopy the code
Enter openssl in the command operator window to see if it can be used
Git openSSL: Git openSSL: Git openSSL: Git OpenSSL
SSL – How to install OpenSSL in Windows 10? – Stack Overflow