我遇到一个仅在Safari上搜索时才出现的问题。仅当用户键入和按Enter键的速度超过搜索建议的加载速度时,才会发生这种情况。
我们收到的错误是:“由于访问控制检查,XMLHTTPRequest无法加载[URL] /?query = test。所有请求都在同一个域上,因此我不认为这是CORS问题。这似乎也发生了在远程功能期间,而不是包含/ query
的预取应有错误可以在下面找到预输入配置:
$('#searchIconInput').typeahead({
hint: true,
highlight: true,
minLength: 3
},
{
name: 'searchSuggestionsShown',
source: searchSuggestionEngine
});
});
var searchSuggestionEngine = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.whitespace,
queryTokenizer: Bloodhound.tokenizers.whitespace,
prefetch: {
url: '@Url.Action("RetrieveSuggestedSearchItems", "Search")',
ttl: getNumberOfMillisecondsToCachePrefetchedData(),
},
remote: {
url: '@Url.Action("RetrieveAdditionalSuggestedSearchItems", "Search")/?query=',
replace: function (url, uriEncodedQuery) {
return url + uriEncodedQuery;
},
cache: false
}
});