엔터프라이즈 API에 캐싱을 적용하는 중입니다. 역방향 프록시 캐싱을 지원하는로드 밸런서와의 호환성을 위해 유형 "공용, 최대 연령 = 600"의 캐시 제어를 구현하려고합니다.WCF에서 AspNetCacheProfile을 사용하여 "Cache-Control : public, max-age = 600"을 얻는 방법
그러나 역방향 프록시 캐싱에 적합하지 않은 "개인, 최대 연령 = 600"만 출력하도록 WCF를 얻을 수 있습니다.
프로필에 다음 위치가 설정되어 있습니다. 서버 (ASP 응용 프로그램 수준 캐싱이 필요함)하지만 다른 모든 위치도 시도했지만 아무도 공개하지 않습니다. 이 같은 공상 아무것도 표준 WCF를 사용하지
<caching>
<outputCache enableOutputCache="true"/>
<outputCacheSettings>
<outputCacheProfiles>
<add name="CacheDefault" duration="600" varyByParam="none" location="Any" />
</outputCacheProfiles>
</outputCacheSettings>
</caching>
임 : 나는 심지어 내 현재의 생산 코드에있을 수있는 혼란 변수를 제거하기 위해 새로운 WCF 서비스 프로젝트를 시작했습니다
[AspNetCacheProfile("CacheDefault")]
[OperationContract]
[WebGet(UriTemplate = "/GetData/{value}")]
string GetData(string value);
을, 그러나 여전히 개인적으로 출력됩니다.
P. WebOperationContext.current.outgoingresponse.headers를 수동으로 덮어 쓰고 싶지 않다는 것을 분명히해야합니다. 나는 AspNetCacheProfile을 구성하는 것으로 빨리 승리했다.
도움이 될 것입니다.
감사합니다.
올리버
죄송하지만이 시나리오에는 적합하지 않습니다. 많은 감사, 올리버 –