gpt4 book ai didi

.net - 收到 500 内部服务器错误

转载 作者:行者123 更新时间:2023-12-01 01:01:39 25 4
gpt4 key购买 nike

我有 2 个 Intranet 站点:

http://intranetv1/
http://intranetv2/

v1基于.NET 1.1,v2基于.NET 3.5

在 v1 上,我创建了一个网页,并尝试使用一些 jQuery 来访问我在 v2 上创建的 Web 服务。由于 Web 服务是使用 .NET 3.5 编码的,因此我无法在 v1 上使用该 Web 服务。

无论如何,我假设在这种情况下我应该使用 JSONP,但是每次运行页面时,ajax 部分都不起作用,并且在 google chrome 中,我只收到 500 错误消息,如已取消。

我不明白为什么会发生这种情况。

这是 v1 .NET 1.1 服务器上的 jQuery:

function selectedDateTime(strDate, strHours, strMinutes) {

$.ajax({
type: 'POST',
url: 'http://intranetv2/webservices/meetingrooms.asmx/GetDayCount',
data: '{ strMeetingDate:"' + strDate + " " + strHours + ":" + strMinutes + ":00" + '" }',
contentType: 'application/json; charset=utf-8',
dataType: 'jsonp',
success: function(department) {
alert("success");
},
error: function(xhr, status, error) {
alert("error");
}
});

return strDate + "---" + $("#txtDate").val();

}

如您所见,我正在尝试访问 v2 .NET 3.5 服务器上的 .asmx 文件。

当我运行这个时,谷歌浏览器给我一个 500 服务器错误,并说 asmx 文件已被取消,然后我收到一条警报,显示 selectedDateTime 函数末尾的日期警报。所以函数正在执行,但是ajax脚本的成功或错误部分根本没有被执行。

<小时/>

我收到以下回复:

Request URL:http://intranetv2/webservices/meetingrooms.asmx/GetDayCount?callback=jQuery110100248512071557343_1372419413424&{%20strMeetingDate:%2228/06/2013%2006:00:00%22%20}&_=1372419413425
Request Method:GET
Status Code:500 Internal Server Error

Request Headers
GET /webservices/meetingrooms.asmx/GetDayCount?callback=jQuery110100248512071557343_1372419413424&{%20strMeetingDate:%2228/06/2013%2006:00:00%22%20}&_=1372419413425 HTTP/1.1
Host: intranetv3
Connection: keep-alive
Authorization: Negotiate TlRMTVNTUAADAAAAGAAYAHYAAAAYABgAjgAAABIAEgBIAAAABgAGAFoAAAAWABYAYAAAAAAAAACmAAAABYKIogUBKAoAAAAPQgBQAEMATwBMAEwASQBOAFMAaQB4AGYASQBYAEYALQBHAEIASgBUAEIAMgBKAJBkNIpqc7C+AAAAAAAAAAAAAAAAAAAAAIGOnhAoLt95s2HzXVTV7AvYOt1c9vbdJQ==
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36
DNT: 1
Referer: http://intranetv1/meeting/meeting_room_bookings_2_1.aspx
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Query String Parametersview sourceview URL encoded
callback:jQuery110100248512071557343_1372419413424
{ strMeetingDate:"28/06/2013 06:00:00" }:
_:1372419413425

Response Headers
HTTP/1.1 500 Internal Server Error
Date: Fri, 28 Jun 2013 11:36:57 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Cache-Control: private
Content-Type: text/plain; charset=utf-8
Content-Length: 406
<小时/>

以下是我在 Google Chrome 开发者工具中收到的错误消息的屏幕截图: enter image description here Click here for full resolution .

<小时/>

这是 .asmx 代码:

[WebMethod()]
public double GetDayCount(string strMeetingDate)
{
string[] strDateAndTime = strMeetingDate.Split(' ');

string[] strStartDateParts = strDateAndTime[0].Split('/');
string[] srtStartTimeParts = strDateAndTime[1].Split(':');

int year = Int32.Parse(strStartDateParts[2]);
int month = Int32.Parse(strStartDateParts[1]);
int day = Int32.Parse(strStartDateParts[0]);
int hour = Int32.Parse(srtStartTimeParts[0]);
int min = Int32.Parse(srtStartTimeParts[1]);
int sec = Int32.Parse(srtStartTimeParts[2]);

DateTime meetingDate = new DateTime(year, month, day, hour, min, sec);

using (connection = new SqlConnection(ConfigurationManager.AppSettings["connString"]))
{

using (command = new SqlCommand("intranet.dbo.BusinessHours", connection))
{

command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add("@meeting_date", SqlDbType.DateTime).Value = meetingDate;

connection.Open();

using (reader = command.ExecuteReader())
{
reader.Read();
return (double)reader["hours"];
}
}
}

最佳答案

您的 strDate 包含一些无效字符。因此,您需要在发送 ajax 请求之前对 strDate 值进行编码。

更新将您的 Web 方法标记为 ScriptMethod,如下所示

[WebMethod]
[ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
public double GetDayCount(string strMeetingDate){}

阅读本文以获取更多信息

http://tutorials.cmsnsoftware.com/2011/01/how-to-call-csharp-function-in-ajax.html

关于.net - 收到 500 内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17363905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com