2017-05-04 2 views
0

Excel 추가 기능을 사용하고 있습니다. 추가 기능에는 ajax를 사용하여 여러 개의 나머지 API 호출이 있습니다. 특히 응답하는 데 약간의 시간이 걸릴 수 있습니다 (이 경우 10 분 이상). Excel 온라인에서 제대로 작동합니다. 응답이 수신되어 표시됩니다. Mac 용 Excel에서 1 분 후에 요청에 영향을주는 시간 제한 (또는 무언가)이있는 것으로 보입니다. 상태 코드 0을 반환하고 서버가 499 (클라이언트 취소 요청)를 던지고 있습니다.Mac 용 Excel JS 추가 기능 HTTP 요청 제한 시간

Mac 용 Office에 시간 초과가 있습니까? 그렇다면 변경하는 방법이 있습니까? ajax 요청에 타임 아웃 필드를 추가하는 것이 작동하지 않습니다.

답변

0

나는 이것이 Lengthy HTTP calls failing in TaskPane apps on Office for Mac Client과 같은 질문이라고 생각합니다. Office에서 사용하는 WebKit 컨트롤에는 기본 제한 시간 인 60 초가 있습니다. 우리의 끝에서 기본 타임 아웃을 덮어 쓸 방법이 없습니다. 시간 제한 속성을 설정 파산 지금은 고정 된 웹킷 회귀가 발생했습니다

var xhr = new XMLHttpRequest(); 
var startDate = new Date(); 
xhr.open('POST', url, true); 

xhr.timeout = 800000; // time in milliseconds 

xhr.onload = function() { 
    console.log((new Date() - startDate) + " milliseconds to return."); 
}; 

xhr.ontimeout = function (e) { 
    console.error("error"); 
}; 

xhr.send("data"); 

하는 것으로 : 나는 10 분 요청과 함께 작동하는 다음 코드를 시도했습니다. Safari의 최신 버전이 필요합니다. 또한 WebKit가 수신하는 네이티브 XMLHttpRequest :: timeout 속성을 실제로 설정하지 않기 때문에 jQuery 시간 초과 속성이 작동하지 않습니다. 타사 라이브러리를 사용하여 요청할 경우 XMLHttpRequest 시간 초과가 올바르게 설정되어 있는지 확인하십시오.

+0

이 방법이 효과적입니다. 고맙습니다 :) –