ASP.NET ScriptManager вызывает предупреждение в Chrome - PullRequest
1 голос
/ 16 марта 2009

В консоли javascript для разработчика chrome появляется следующее предупреждение:

Uncaught SyntaxError: Неожиданный токен <<a href="http://.../Question.asmx/js" rel="nofollow noreferrer"> http: //.../Question.asmx/js (строка 1)

Ресурс интерпретируется как скрипт, но передается с MIME типа text / html. Http: //.../Question.asmx/js

Исходный код HTML выглядит нормально:

<script src="../../../Question.asmx/js" type="text/javascript"></script>

Я использую ASP ScriptManager для включения этих веб-сервисов. Они работают нормально, мне просто интересно, в чем именно проблема, и, поскольку у меня проблема с ОКР, как избавиться от предупреждений.

EDIT: Там не пользовательский обработчик участвует. Это просто стандартный веб-сервис, который я включаю с помощью диспетчера сценариев:

<asp:ScriptManager runat="server" ID="scm1" EnablePageMethods="true" EnablePartialRendering="true" >
        <Services>
            <asp:ServiceReference Path="~/Question.asmx" />
        </Services>
    </asp:ScriptManager>

Ответы [ 3 ]

1 голос
/ 16 марта 2009

Второе предупреждение связано с тем, что ваш пользовательский обработчик (Question.asmx) не устанавливает тип mime ресурса, который вы отправляете обратно правильно.

В метод ProcessRequest необходимо добавить следующее:

context.Response.ContentType = "text/javascript";

Это, вероятно, также избавит от первой ошибки, так как HTML-страница должна начинаться с допустимого элемента <! Doctype, и я считаю, что эта ошибка вызывает жалобы. </p>

0 голосов
/ 10 ноября 2009
0 голосов
/ 14 августа 2009

Не уверен, что является причиной ошибки в Chrome, но один из способов избежать этого - встроить javascript для прокси службы (question.asmx / js) прямо на вашу страницу. Это означает большую загрузку клиента, но на одну поездку туда и обратно на сервер (или на две меньше в зависимости от метода проверки подлинности вашего сайта).

Просто установите InlineScript = "true" в теге ServiceReference

Для получения дополнительной информации см. http://weblogs.asp.net/dwahlin/archive/2006/12/28/understanding-asp-net-ajax-web-service-proxies.aspx

...