aboutsummaryrefslogtreecommitdiff
path: root/juick-www/src/main/java/com/juick
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2018-04-04 18:55:18 +0300
committerGravatar Vitaly Takmazov2018-04-04 18:55:18 +0300
commitba52f4add7a96df36112522faf0f85f41b190694 (patch)
tree4653c4fdf6a4627fae6d08d31f64e0dcc22023de /juick-www/src/main/java/com/juick
parenta5f045a3780ef8530afa7493cf090771b8fdcfe1 (diff)
/apple-app-site-association
Diffstat (limited to 'juick-www/src/main/java/com/juick')
-rw-r--r--juick-www/src/main/java/com/juick/www/configuration/WebSecurityConfig.java2
-rw-r--r--juick-www/src/main/java/com/juick/www/controllers/AppSiteAssociation.java49
2 files changed, 50 insertions, 1 deletions
diff --git a/juick-www/src/main/java/com/juick/www/configuration/WebSecurityConfig.java b/juick-www/src/main/java/com/juick/www/configuration/WebSecurityConfig.java
index 46fa7619..4de79363 100644
--- a/juick-www/src/main/java/com/juick/www/configuration/WebSecurityConfig.java
+++ b/juick-www/src/main/java/com/juick/www/configuration/WebSecurityConfig.java
@@ -135,6 +135,6 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
public void configure(WebSecurity web) throws Exception {
web.debug(false);
- web.ignoring().antMatchers("/style.css*", "/scripts.js*", "/h2-console");
+ web.ignoring().antMatchers("/style.css*", "/scripts.js*", "/h2-console", "/.well-known/**");
}
}
diff --git a/juick-www/src/main/java/com/juick/www/controllers/AppSiteAssociation.java b/juick-www/src/main/java/com/juick/www/controllers/AppSiteAssociation.java
new file mode 100644
index 00000000..dcf6c400
--- /dev/null
+++ b/juick-www/src/main/java/com/juick/www/controllers/AppSiteAssociation.java
@@ -0,0 +1,49 @@
+package com.juick.www.controllers;
+
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Collections;
+import java.util.List;
+
+@RestController
+public class AppSiteAssociation {
+ @Value("${ios_app_id:}")
+ private String appId;
+
+ @GetMapping("/.well-known/apple-app-site-association")
+ @ResponseBody
+ public SiteAssociations appSiteAssociations() {
+ WebCredentials webCredentials = new WebCredentials();
+ webCredentials.setApps(Collections.singletonList(appId));
+ SiteAssociations siteAssociations = new SiteAssociations();
+ siteAssociations.setWebcredentials(webCredentials);
+ return siteAssociations;
+ }
+
+ private class SiteAssociations {
+ private WebCredentials webcredentials;
+
+ public WebCredentials getWebcredentials() {
+ return webcredentials;
+ }
+
+ public void setWebcredentials(WebCredentials webcredentials) {
+ this.webcredentials = webcredentials;
+ }
+ }
+
+ private class WebCredentials {
+ private List<String> apps;
+
+ public List<String> getApps() {
+ return apps;
+ }
+
+ public void setApps(List<String> apps) {
+ this.apps = apps;
+ }
+ }
+}