小编Ric*_*eil的帖子

如何从ruby客户端解析SOAP响应?

我正在学习Ruby,我编写了以下代码来了解如何使用SOAP服务:

require 'soap/wsdlDriver'
wsdl="http://www.abundanttech.com/webservices/deadoralive/deadoralive.wsdl"
service=SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
weather=service.getTodaysBirthdays('1/26/2010')
Run Code Online (Sandbox Code Playgroud)

我得到的回应是:

#<SOAP::Mapping::Object:0x80ac3714 
{http://www.abundanttech.com/webservices/deadoralive} getTodaysBirthdaysResult=#<SOAP::Mapping::Object:0x80ac34a8 
{http://www.w3.org/2001/XMLSchema}schema=#<SOAP::Mapping::Object:0x80ac3214 
{http://www.w3.org/2001/XMLSchema}element=#<SOAP::Mapping::Object:0x80ac2f6c 
{http://www.w3.org/2001/XMLSchema}complexType=#<SOAP::Mapping::Object:0x80ac2cc4 
{http://www.w3.org/2001/XMLSchema}choice=#<SOAP::Mapping::Object:0x80ac2a1c 
{http://www.w3.org/2001/XMLSchema}element=#<SOAP::Mapping::Object:0x80ac2774 
{http://www.w3.org/2001/XMLSchema}complexType=#<SOAP::Mapping::Object:0x80ac24cc 
{http://www.w3.org/2001/XMLSchema}sequence=#<SOAP::Mapping::Object:0x80ac2224 
{http://www.w3.org/2001/XMLSchema}element=[#<SOAP::Mapping::Object:0x80ac1f7c>, 
#<SOAP::Mapping::Object:0x80ac13ec>, 
#<SOAP::Mapping::Object:0x80ac0a28>, 
#<SOAP::Mapping::Object:0x80ac0078>, 
#<SOAP::Mapping::Object:0x80abf6c8>, 
#<SOAP::Mapping::Object:0x80abed18>]
>>>>>>> {urn:schemas-microsoft-com:xml-diffgram-v1}diffgram=#<SOAP::Mapping::Object:0x80abe6c4 
{}NewDataSet=#<SOAP::Mapping::Object:0x80ac1220 
{}Table=[#<SOAP::Mapping::Object:0x80ac75e4 
{}FullName="Cully,  Zara" 
{}BirthDate="01/26/1892" 
{}DeathDate="02/28/1979" 
{}Age="(87)" 
{}KnownFor="The Jeffersons" 
{}DeadOrAlive="Dead">, 
#<SOAP::Mapping::Object:0x80b778f4 
{}FullName="Feiffer, Jules" 
{}BirthDate="01/26/1929" 
{}DeathDate=#<SOAP::Mapping::Object:0x80c7eaf4> 
{}Age="81" 
{}KnownFor="Cartoonists" 
{}DeadOrAlive="Alive">]>>>>
Run Code Online (Sandbox Code Playgroud)

我有困难的很大搞清楚如何分析并显示在一个不错的表返回的信息,或甚至只是如何通过记录回路,并已获得各元素(即全名,年龄等).我经历了整个去"getTodaysBirthdaysResult.methods - Object.new.methods",并一直工作到尝试找出如何访问的元素,但后来我到阵列和我迷路了.

任何可以提供的帮助将不胜感激.

ruby soap wsdl response request

3
推荐指数
1
解决办法
5589
查看次数

ASP.NET WebApi FormsAuthentication 401(未经授权)问题

我一直在学习ASP.Net WebApi中的授权是如何工作的,我在另一个帖子(ASP.NET Web API身份验证)中遇到了Darin Dimitrov的答案,我需要一些帮助来理解为什么我会得到401.

遵循Darin的代码,我创建了一个WebApi项目并添加了以下控制器和模型:

AccountController.cs

using System.Web.Http;
using System.Web.Security;
using AuthTest.Models;

namespace AuthTest.Controllers
{
    public class AccountController : ApiController
    {
        public bool Post(LogOnModel model)
        {
            if (model.Username == "john" && model.Password == "secret")
            {
                FormsAuthentication.SetAuthCookie(model.Username, false);
                return true;
            }

            return false;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

UsersController.cs

using System.Web.Http;

namespace AuthTest.Controllers
{
    [Authorize]
    public class UsersController : ApiController
    {
        public string Get()
        {
            return "This is top secret material that only authorized users can see";
        }
    }
} …
Run Code Online (Sandbox Code Playgroud)

c# authorization asp.net-authorization asp.net-web-api

2
推荐指数
1
解决办法
7199
查看次数

设置 Topshelf 和 Quartz.Net 控制台应用程序时从 Ninject 访问对象

在配置 Ninject/Topshelf/Quartz.Net 设置期间使用对象的正确方法是什么?

我创建了一个IocModule将我的接口绑定到一个具体类:

public class IocModule : NinjectModule
{
    public override void Load()
    {
        Bind<IConfiguration>().To<JsonConfiguration>().InSingletonScope();
    }
}
Run Code Online (Sandbox Code Playgroud)

在运行时间的 Quartz.Net 设置期间,我需要此配置中的一些值,但使用IConfiguration configuration = new JsonConfiguration();似乎不是执行此操作的正确方法:

namespace Question {
    public class Program {
        public static int Main(string[] args) {
            var exitCode = HostFactory.Run(c => {
                c.UseNinject(new IocModule());

                // How can I get this from Ninject?
                IConfiguration configuration = new JsonConfiguration();
                configuration.Load();
                c.Service<Service>(sc => {
                    sc.ConstructUsingNinject();
                    sc.WhenStarted((service, control) => service.Start(control));
                    sc.WhenStopped((service, control) => service.Stop(control));
                    sc.UseQuartzNinject();
                    sc.ScheduleQuartzJob(q => q.WithJob(() …
Run Code Online (Sandbox Code Playgroud)

c# ninject scheduled-tasks quartz.net topshelf

2
推荐指数
1
解决办法
814
查看次数