diff options
author | Vitaly Takmazov | 2021-01-16 10:52:19 +0300 |
---|---|---|
committer | Vitaly Takmazov | 2021-01-16 10:52:28 +0300 |
commit | 9f6c1ad11e6d6259a5c10aa95eca169b87c7c3b4 (patch) | |
tree | e0181f064ebed28a337c852ba402fa73b65ab96a /src/main/java/com/juick | |
parent | 0faba6ff6c3008fbd5348bcdb9121fb89541fd46 (diff) |
ActivityPub: do not serialize context twice
Diffstat (limited to 'src/main/java/com/juick')
-rw-r--r-- | src/main/java/com/juick/SignatureManager.java | 2 | ||||
-rw-r--r-- | src/main/java/com/juick/config/ActivityPubConfig.java | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/main/java/com/juick/SignatureManager.java b/src/main/java/com/juick/SignatureManager.java index fed6c368..35d6215f 100644 --- a/src/main/java/com/juick/SignatureManager.java +++ b/src/main/java/com/juick/SignatureManager.java @@ -87,7 +87,7 @@ public class SignatureManager { requestHeaders.add("Host", host); requestHeaders.add("Digest", digestHeader); requestHeaders.add("Signature", signatureString); - HttpEntity<Context> request = new HttpEntity<>(finalContext, requestHeaders); + HttpEntity<String> request = new HttpEntity<>(payload, requestHeaders); logger.info("Sending context to {}: {}", to.getId(), payload); ResponseEntity<Void> response = apClient.postForEntity(inbox, request, Void.class); logger.info("Remote response: {}", response.getStatusCodeValue()); diff --git a/src/main/java/com/juick/config/ActivityPubConfig.java b/src/main/java/com/juick/config/ActivityPubConfig.java index e22946fb..661f6276 100644 --- a/src/main/java/com/juick/config/ActivityPubConfig.java +++ b/src/main/java/com/juick/config/ActivityPubConfig.java @@ -29,11 +29,13 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpMethod; import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; +import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.web.client.RestTemplate; import javax.inject.Inject; import java.net.URI; +import java.nio.charset.StandardCharsets; import java.util.Collections; @Configuration @@ -69,6 +71,7 @@ public class ActivityPubConfig { } }); restTemplate.getMessageConverters().add(0, mappingJacksonHttpMessageConverter()); + restTemplate.getMessageConverters().add(0, new StringHttpMessageConverter(StandardCharsets.UTF_8)); restTemplate.setErrorHandler(activityPubClientErrorHandler); restTemplate.setInterceptors(Collections.singletonList( new HeaderRequestInterceptor("Accept", Activity.ACTIVITY_MEDIA_TYPE))); |