0

だから私はウェブサービスを持っています.http://Komputerz4Kidz.com/mailer/Service1.asmx/SendMailはURLです。これは、POST を使用して jQuery 経由でメールを送信するために一緒に投げたスクリプトの、名前空間と 1 つまたは 2 つの変数を除いた正確なレプリカです。

それは非常に単純で、ここでは多くのことは行っていません。

function ContactSubmit() {
var Name = $('input:text[name=pickup_name]').val();
var Email = $('input:text[name=pickup_email]').val();
var Message = $('textarea[name=pickup_message]').val();
var Date = $('input:text[name=pickup_date]').val();
$.ajax({

type: "POST",
url: "http://Komputerz4Kidz.com/mailer/Service1.asmx/SendMail",
data: {pickup_name: Name, pickup_email: Email, pickup_message: Message, pickup_date:     Date},

success: ContactSuccess,

error: function (x, y, z)     {console.log(x);console.log(y);console.log(z);alert('ERROR');}

});

}

function ContactSuccess(){
alert("Thanks! Your message has been sent and I will be in touch shortly!");

};

ログに記録される唯一のエラーは「エラー 500: 無効な応答形式です。」

スタックオーバーフローを調べたところ、いくつかの解決策が見つかりましたが、私には適用されませんでした。

私が言ったように、この例は別のサイトで動作し、同じサーバーからホストされています。IIS に独自のアプリケーション プールがあり、.NET 4.0 統合に適切にセットアップされています。

それが役立つ場合は、Komputerz4Kidz.com でスクリプトをライブでテストできます。下部には連絡フォームがあります。

ご不明な点がございましたら、お気軽にお問い合わせください。

PS: WEB サービスは、サーバーから実行すると 100% 正常に機能します。

komputerz4kidz.com/mailer/service1.asmx?op=SendMail

4

2 に答える 2

2

パラメータ名であると仮定して、これを試してください:(私はあなたのリンクにアクセスすることがわかりました)

前 :

data: {pickup_name: Name, pickup_email: Email, pickup_message: Message, pickup_date:     Date},

後 :

data: {_name: Name, _email: Email, _message: Message, p_date: Date},
于 2013-09-12T23:00:01.487 に答える
1

私はする必要がなかったはずのURLを見ました。奇妙な URL にアクセスすることを期待するのはよくありません。

「Missing parameter: _name」と応答します。それはあなたにとってどのように聞こえますか?

とにかく、あなたのリクエストは次のようになっているようです:

data: {_name: Name, _email: Email, _message: Message, _date:     Date},

またvar Date悪い。Date組み込みの JavaScript クラスです。JavaScriptビルトインを上書きしないようにしてください!

于 2013-09-12T23:00:17.673 に答える