단일 페이지 자바 스크립트 응용 프로그램 (JavascriptMvc 사용)과 ASP.NET MVC3 (NServiceMVC 사용) 위에 빌드 된 REST 서비스 백엔드가 있습니다.단일 페이지 웹 앱/REST 백엔드에서 MiniProfiler를 사용하려면 어떻게해야합니까?
REST 서비스에는 MiniProfiler가 설치되어 실행 중이며 X-MiniProfiler-Ids 헤더가 각 AJAX 요청과 함께 돌아옵니다. 나는 실제로 미니 프로 파일러를 실행하고 작동 시키지만, 이것에 대한 정보는 찾을 수 없으므로 올바른 방법을 사용하고 있는지 확실하지 않습니다.
지원되는 시나리오입니까? 지금이 방법이 있습니까?
는 내가 현재하고있는 중이 야하는 것은 이것이다 :는 HTML 응용 프로그램에서
(모든 정적 코드, 아니 동적 물건이다), 내가 가진 내 MVC 응용 프로그램에서
<script type="text/javascript" src="/api/profiler"></script>
, 내가 가진 :
public ActionResult Profiler()
{
if (!ControllerContext.HttpContext.IsDebuggingEnabled)
{
return new EmptyResult();
}
return new ContentResult() {
Content = StackExchange.Profiling.MiniProfiler.RenderIncludes(
position: RenderPosition.Right,
showControls: true
)
.ToString()
.Replace("<script type=\"text/javascript\">", "")
.Replace("</script>", "")
};
}
는 분명히, 하드 <script>
태그를 제거하기 위해 여기에 해킹이있다.
이외의 나머지 MVC 측에서는 프로파일 러가 평소와 똑같이 사용됩니다. 앱에서 REST 호출이 발생하는 동작을 수행하면 miniprofiler가이를 나타냅니다. showControls:true
매개 변수를 사용하면 클리어 버튼이 너무 유용합니다. 그렇지 않으면 전체 페이지가 본질적으로 새로 고침되지 않으므로 상수 목록을 얻을 수 있기 때문입니다.
이렇게하는 것이 올바른 방법입니까, 아니면 더 좋은 방법입니까?
솔루션은 작동하지만 모범 사례를 따르고 있다는 확인을 원하십니까? –
@KirkWoll 예. 프로파일 러에 관한 많은 문서가 없기 때문에 기존 솔루션을 간과하고 있는지 알고 싶습니다. 최악의 경우이 질문은 향후 웹 검색을위한 문서를 제공 할 수 있습니다. 이것이 "최상의"방법이라면 나는 패치를 제출하여'.replace()'해킹을하지 않아도되고 이것이 진정한 "공식적인"방법이되도록 할 것이다. – gregmac
나는 동일한 질문이있다. 아직도 이런 식으로하고 있니? – Jerry