我正在开发需要集成ZenDesk SDK的iOS应用。我已经设置了AppId,zendeskurl,clientId。
[[ZDKConfig instance] initializeWithAppId:@"xxxxxxx"
zendeskUrl:@"https://xxxxx"
andClientId:@"xxxxxx"];
[ZDCChat configure:^(ZDCConfig *defaults) {
defaults.accountKey = @"xxxxx";
defaults.preChatDataRequirements.department = xxxx;
defaults.preChatDataRequirements.message = xxxx;
}];
当我将身份验证方法设置为匿名时,它的工作正常。
[ZDKConfig instance].userIdentity = [[ZDKJwtIdentity alloc]
initWithJwtUserIdentifier:@"[email protected]"];
但是当我将JWT设置为身份验证方法时。没用
最佳答案
Kirti,我知道这有点旧了,但是我只是完成了此设置,最后使它开始工作,因此希望它可以对其他人有所帮助。
将JWT端点设置为身份验证方法要求您拥有自己的服务器端点,然后Zendesk可以使用该服务器端点来验证身份。
因此,在显示JWT URL的字段中,您不应具有ZenDesk实例的URL。您应该有https://yourserver.com/verifyJWT(这只是示例端点)。然后,在该端点处,您的服务器应验证JWT是否有效,并从ZenDesk here返回200 HTTP响应或401 HTTP响应(分别为成功和未授权)。
然后,使用iOS SDK,您需要设置一个身份,以便ZenDesk知道要发送到服务器端点的内容。关键是从服务器获取身份(可能是对登录的响应),然后您可以验证ZenDesk在何时到达端点。身份可以是任何字符串,只要其格式可以验证即可。
您可能还需要了解JWT的格式。我发现this文章非常有帮助。