DOBON.NETプログラミング掲示板過去ログ
ASP.NETで別のサーバに実行部を置いた場合ののScriptManagerの動作
題名: ASP.NETで別のサーバに実行部を置いた場合ののScriptManagerの動作
著者: とんがり帽子
日時: 2013/12/15 18:45:15
ID: 32002
この記事の返信元:
(なし)
この記事への返信:
[32004]
Re[1]: ASP.NETで別のサーバに実行部を置いた場合ののScriptManagerの動作
WebSurfer
2013/12/16 10:26:46
ツリーを表示
環境/言語:[ASP.NET 4.0 (Visual Studio 2010)C#で記述]
分類:[ASP.NET]
今、事情があってWEBサーバを2台に分けています
それで、違うサーバのAJAX対応WCFサービスの関数を呼び出したいのですが、
権限がありませんと言う(まあ当たり前と言えば当たり前なのですが・・・)エラーになってしまいます
ですがどうしても、別のサーバのその関数を呼び出したいのですが、
何か方法はないでしょうか
サーバ同士はIPアドレスで直接アクセスするようになっています
●サービス側(Service1.svc.cs)
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class Service1
{
// HTTP GET を使用するために [WebGet] 属性を追加します (既定の ResponseFormat は WebMessageFormat.Json)。
// XML を返す操作を作成するには、
// [WebGet(ResponseFormat=WebMessageFormat.Xml)] を追加し、
// 操作本文に次の行を含めます。
// WebOperationContext.Current.OutgoingResponse.ContentType = "text/xml";
[OperationContract]
public void DoWork()
{
//・・・・
//いろいろ記述・・・・
return;
}
}
●呼び出し側
javascriptの記述
< type="text/javascript">
function onClick(){
Service1.DoWork(); //●この関数が権限エラー
}
</script>
Script Managerの記述
<!-- ●http://192.168.1.100のなかのサービスを自分のサーバに持ってくるとちゃんと動く -->
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="http://192.168.1.100/folder/Service1.svc" />
</Services>
</asp:ScriptManager>
題名: Re[1]: ASP.NETで別のサーバに実行部を置いた場合ののScriptManagerの動作
著者: WebSurfer
日時: 2013/12/16 10:26:46
ID: 32004
この記事の返信元:
[32002]
ASP.NETで別のサーバに実行部を置いた場合ののScriptManagerの動作
とんがり帽子
2013/12/15 18:45:15
この記事への返信:
(なし)
ツリーを表示
■No32002に返信(とんがり帽子さんの記事)
> 今、事情があってWEBサーバを2台に分けています
> それで、違うサーバのAJAX対応WCFサービスの関数を呼び出したいのですが、
> 権限がありませんと言う(まあ当たり前と言えば当たり前なのですが・・・)エラーになってしまいます
>
> ですがどうしても、別のサーバのその関数を呼び出したいのですが、
> 何か方法はないでしょうか
JSONP をキーワードにググると解決策が見つかるかもしれません。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[ASP.NET]
今、事情があってWEBサーバを2台に分けています
それで、違うサーバのAJAX対応WCFサービスの関数を呼び出したいのですが、
権限がありませんと言う(まあ当たり前と言えば当たり前なのですが・・・)エラーになってしまいます
ですがどうしても、別のサーバのその関数を呼び出したいのですが、
何か方法はないでしょうか
サーバ同士はIPアドレスで直接アクセスするようになっています
●サービス側(Service1.svc.cs)
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class Service1
{
// HTTP GET を使用するために [WebGet] 属性を追加します (既定の ResponseFormat は WebMessageFormat.Json)。
// XML を返す操作を作成するには、
// [WebGet(ResponseFormat=WebMessageFormat.Xml)] を追加し、
// 操作本文に次の行を含めます。
// WebOperationContext.Current.OutgoingResponse.ContentType = "text/xml";
[OperationContract]
public void DoWork()
{
//・・・・
//いろいろ記述・・・・
return;
}
}
●呼び出し側
javascriptの記述
< type="text/javascript">
function onClick(){
Service1.DoWork(); //●この関数が権限エラー
}
</script>
Script Managerの記述
<!-- ●http://192.168.1.100のなかのサービスを自分のサーバに持ってくるとちゃんと動く -->
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="http://192.168.1.100/folder/Service1.svc" />
</Services>
</asp:ScriptManager>