나는 다음과 같은 웹 API 방법에 대한 자신감의 문서와 자신감 UI를 생성하는 Swashbuckle를 사용 찾고 있어요 (이것은 PDF 파일로 편지 병합 효과적인 메시지의) :이 현재 작동하지 않는Swagger UI에서 사전 매개 변수를 사용하려면 어떻게해야합니까?
[HttpPost]
[ResponseType(typeof(byte[]))]
public HttpResponseMessage MergeValues([FromUri]Dictionary<string, string> mergeValues,
[FromBody]byte[] pdfTemplate)
{
return MergeStuff();
}
, 또는 적어도 결과 Swagger UI와 상호 작용하는 방법을 모르겠다.
이것은 다음과 같은 Swagger UI를 만듭니다.이 UI는 합리적인 것처럼 보이지만 올바르게 채우려면 어떻게해야할지 모르겠다. 최신 Nuget의 모든 기본 Swashbuckle 설정을 사용하고 있습니다.
바이트 배열 : 바이트 배열에 대해 Base64 인코딩 텍스트를 입력하면 바이트 배열에 항상 null이 표시됩니다. 밝혀졌습니다. BASE64 텍스트를 큰 따옴표로 묶어야합니다. 그러면 작동합니다.
사전 : 다양한 유형의 JSON 표현식 (배열, 객체 등)을 시도했으며 사전에 값을 입력 할 수 없으므로 결과 사전 객체에는 0 개의 항목이 있습니다.
나는 상황을 타개 할 수있는 능력을 가지고 있고이 작업을 수행 할 수있는 방법을 알고 싶습니다. 예를 들어 사전을 KeyValuePair<string,string>
배열로 변경하면 도움이됩니다.
- 이 문자열이 입력 유형을 변경하고 내 자신의 설명서를 직렬화/디코딩을 수행 :
옵션 난 내가 피할 싶은 것을 가지고 것을 알고있다. 나는 나의 타입에 대해 명백하게하고 싶지 않고 너무 화려하지 않아야한다.
- 맞춤형 바인더. 유지 보수 할 코드/복잡성이 적기 때문에 표준/기본 바인더를 사용하고 싶습니다.
파일을 업로드하려고하는 것처럼 보입니다. https://github.com/domaindrivendev/Swashbuckle/issues/120 – HelderSepu
사실, 'byte []'파일이 있습니다. 내 base64 콘텐츠 주위에 큰 따옴표가 필요합니다. 따옴표로 작동합니다. 이제 '사전'을 처리하는 방법을 알아야합니다. – Jaxidian