我正在使用 Rust 开发一个 NODE JS 包并wasm-pack
进行编译,我需要在我的代码中发出 HTTP 请求。我尝试使用reqwest
库,所以在测试中一切正常,但在打包时出现错误。
#![allow(non_snake_case)]
use reqwest;
use wasm_bindgen::prelude::*;
// function
#[wasm_bindgen]
pub fn makeGetRequest(url: &str) -> String {
let mut resp = reqwest::get(url).unwrap();
resp.text().unwrap()
}
// test
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_makeGetRequest() {
let url = "https://stackoverflow.com/";
let body = makeGetRequest(url);
assert!(body.len() > 0);
}
}
配置Cargo.toml
:
...
[lib]
crate-type = ["cdylib"]
[dependencies]
wasm-bindgen = "0.2"
reqwest = "0.9"
我使用以下命令打包项目:
wasm-pack build --release --target nodejs
我得到了错误:
...
error: could not compile `net2`
我发现它看起来net2
不支持wasm-pack
,所以也许我不能reqwest
在我的情况下使用:wasm-pack build 报告错误:无法编译`net2`
有没有办法可以wasm-pack
成功打包同步 HTTP 请求?