错误消息:{"errors":[{"message":"Thereisnoresourceforpath/occ/v2/powertools/xxx/","type":"UnknownResourceError"}]}您可以使用@SecurePortalUnauthenticatedAccess绕过授权??检查。这个注解的帮助文档可以在SAP官网找到。CommerceCloud引入了一个名为SecurePortalUnauthenticatedAccess的注释,以保持OCC端点列表公开。您还可以向您认为应该可公开访问的端点添加注释。OCC不使用会话。这意味着可以(并且应该)忽略JSESSIONIDcookie。为了从特定用户访问资源,需要遵循下面描述的URL约定:https://localhost:9002/rest/v2/{baseSiteID}/users/{userID}/...有效用户ID:anonymousAnonymoususer.${uid}:注册用户的ID。示例:GEThttps://localhost:9002/rest/v2/wsTest/users/username@emai.com/addresses缓存位于一台或多台Web服务器(也称为源服务器)和一台或多台客户端上,并且监控传入的请求,保存响应的副本,例如HTML页面、图像和文件。然后,如果对同一URL发出另一个请求,它可以使用收集到的响应之一,而不是再次从源服务器请求它。下面介绍缓存是如何在OCC中使用的。它提供了有关客户端缓存和服务器端缓存的详细信息。webservicescommons扩展定义了@CacheControl注释,可用于生成缓存控制标头作为响应。如果要为特定方法或整个控制器启用客户端缓存,只需使用@CacheControl对其进行注释并指定适当的指令即可。在ProductsController.java类中可以注意到注释用法的示例:@RequestMapping(value="/{productCode}",method=RequestMethod.GET)@CacheControl(directive=CacheControlDirective.PRIVATE,maxAge=120)@ResponseBodypublicProductWsDTOgetProductByCode(@PathVariablefinalStringproductCode,@RequestParam(defaultValue=DEFAULT_FIELD_SET)finalStringfields){...}注意:由于Cache-Control注解只适用于GET和HEAD方法,不会影响任何其他请求方法。@CacheControl注解只有在给mvc拦截器添加CacheControlHandlerInterceptor时才有效。
