diff --git a/cli/tauri-bundler/src/bundle/osx_bundle.rs b/cli/tauri-bundler/src/bundle/osx_bundle.rs
index 27464f39a..81b211bfd 100644
--- a/cli/tauri-bundler/src/bundle/osx_bundle.rs
+++ b/cli/tauri-bundler/src/bundle/osx_bundle.rs
@@ -214,6 +214,27 @@ fn create_info_plist(
copyright
)?;
}
+
+ if let Some(exception_domain) = settings.exception_domain() {
+ write!(
+ file,
+ " NSAppTransportSecurity\n \
+ \n \
+ NSExceptionDomains\n \
+ \n \
+ {}\n \
+ \n \
+ NSExceptionAllowsInsecureHTTPLoads\n \
+ \n \
+ NSIncludesSubdomains\n \
+ \n \
+ \n \
+ \n \
+ ",
+ exception_domain
+ )?;
+ }
+
write!(file, "\n\n")?;
file.flush()?;
Ok(())
diff --git a/cli/tauri-bundler/src/bundle/settings.rs b/cli/tauri-bundler/src/bundle/settings.rs
index 6969f65c3..a8fae808f 100644
--- a/cli/tauri-bundler/src/bundle/settings.rs
+++ b/cli/tauri-bundler/src/bundle/settings.rs
@@ -111,6 +111,7 @@ struct BundleSettings {
bin: Option>,
example: Option>,
external_bin: Option>,
+ exception_domain: Option,
}
#[derive(Clone, Debug, Deserialize)]
@@ -433,6 +434,10 @@ impl Settings {
}
}
+ pub fn exception_domain(&self) -> Option<&String> {
+ return self.bundle_settings.exception_domain.as_ref()
+ }
+
// copy external binaries to a path.
pub fn copy_binaries(&self, path: &Path) -> crate::Result<()> {
for src in self.external_binaries() {