没有WWW-Authenticate标头的Camel Salesforce身份验证挑战



我正在尝试使用camel和java将值推送/获取到salesforce。当我尝试发送数据时,我会收到以下错误:

HTTP protocol violation: Authentication challenge without WWW-Authenticate header

奇怪的是,当我订阅带有routes/data/AccountChangeEvent 的数据时,它就像一个魅力

public class MyRouteBuilder extends RouteBuilder {
@Override
public void configure() {
from("salesforce:/data/AccountChangeEvent?replayId=-2")
.bean(clientService, "accountChange");
from("direct:updateSalesforce")
.to("salesforce:createSObject?sObjectName=Account");
}
}
public class SalesforcePublisherService {
@Autowired
CamelContext camelContext;
public void publishToSalesforce(String endpointUri, Object body) {
Map<String, Object> values = new HashMap<>();
// [...] Putting some values
camelContext.createProducerTemplate().requestBody("direct:updateSalesforce", values);
}
}

我发现了问题所在。

首先,我发现这个错误与所写的完全不同。为了调查这一部分,我用激活了Jetty的日志

-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog 
-Dorg.eclipse.jetty.LEVEL=DEBUG

然后我在我的邮递员身上重现了这个电话,我收到了这个401错误的消息。经过一些调查,问题与我如何生成刷新令牌有关:

我不应该使用范围"refresh_token">生成salesforces令牌时(实际上不需要作用域(。

最新更新