xml-rpc(2)-first demo_v2

简介:         [XmlRpcMethod("blogger.getUsersBlogs", Description = "获取博客信息")]        public BlogInfo[] getUsersBlogs(string appKey, string username, string...
img_a6339ee3e57d1d52bc7d02b338e15a60.gif         [XmlRpcMethod( " blogger.getUsersBlogs " , Description  =   " 获取博客信息 " )]
img_a6339ee3e57d1d52bc7d02b338e15a60.gif        
public  BlogInfo[] getUsersBlogs( string  appKey,  string  username,  string  password)
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif        
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif {
img_33d02437d135341f0800e3d415312ae8.gif            BlogInfo[] infoarr 
= new BlogInfo[1];
img_33d02437d135341f0800e3d415312ae8.gif            
for (int i = 0; i < 1; i++)
img_2887d91d0594ef8793c1db92b8a1d545.gifimg_7a2b9a960ee9a98bfd25d306d55009f8.gif            
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif{
img_33d02437d135341f0800e3d415312ae8.gif                Member member 
= GetUser(username, password);
img_33d02437d135341f0800e3d415312ae8.gif                
if (member != null)
img_2887d91d0594ef8793c1db92b8a1d545.gifimg_7a2b9a960ee9a98bfd25d306d55009f8.gif                
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif{
img_33d02437d135341f0800e3d415312ae8.gif                    infoarr[i].url 
= GetAppPath() + "Blog/User/Default.aspx?UserName=" + HttpContext.Current.Server.UrlEncode(member.UserName);
img_33d02437d135341f0800e3d415312ae8.gif                    infoarr[i].blogName 
= GetBlogSetting(Convert.ToInt32(member.MemberID)).BlogName;
img_33d02437d135341f0800e3d415312ae8.gif                    infoarr[i].blogid 
= member.MemberID.ToString();
img_105a1e124122b2abcee4ea8e9f5108f3.gif                }

img_105a1e124122b2abcee4ea8e9f5108f3.gif            }

img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif            
return infoarr;
img_05dd8d549cff04457a6366b0a7c9352a.gif        }

img_a6339ee3e57d1d52bc7d02b338e15a60.gif
img_a6339ee3e57d1d52bc7d02b338e15a60.gif        [XmlRpcMethod(
" metaWeblog.getCategories " , Description  =   " 获取分类列表 " )]
img_a6339ee3e57d1d52bc7d02b338e15a60.gif        
public  CategoryInfo[] getCategories( string  blogid,  string  username,  string  password)
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif        
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif {
img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif            TList
<BlogKind> list = GetBlogKind(int.Parse(blogid));
img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif            CategoryInfo[] infoarr 
= new CategoryInfo[list.Count];
img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif            
for (int i = 0; i < infoarr.Length; i++)
img_2887d91d0594ef8793c1db92b8a1d545.gifimg_7a2b9a960ee9a98bfd25d306d55009f8.gif            
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif{
img_33d02437d135341f0800e3d415312ae8.gif                infoarr[i].categoryid 
= list[i].BlogKindID.ToString();
img_33d02437d135341f0800e3d415312ae8.gif                infoarr[i].description 
= list[i].KindName;
img_33d02437d135341f0800e3d415312ae8.gif                infoarr[i].htmlUrl 
= "";
img_33d02437d135341f0800e3d415312ae8.gif                infoarr[i].rssUrl 
= "";
img_33d02437d135341f0800e3d415312ae8.gif                infoarr[i].title 
= list[i].KindName;
img_105a1e124122b2abcee4ea8e9f5108f3.gif            }

img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif            
return infoarr;
img_05dd8d549cff04457a6366b0a7c9352a.gif        }

img_a6339ee3e57d1d52bc7d02b338e15a60.gif
img_a6339ee3e57d1d52bc7d02b338e15a60.gif        [XmlRpcMethod(
" metaWeblog.newPost " , Description  =   " 发表日志 " )]
img_a6339ee3e57d1d52bc7d02b338e15a60.gif        
public   string  newPost( string  blogid,  string  username,  string  password, CookComputing.MetaWeblog.Post post,  bool  publish)
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif        
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif {
img_33d02437d135341f0800e3d415312ae8.gif            Member member 
= GetUser(username, password);
img_33d02437d135341f0800e3d415312ae8.gif            
if (member != null)
img_2887d91d0594ef8793c1db92b8a1d545.gifimg_7a2b9a960ee9a98bfd25d306d55009f8.gif            
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif{
img_33d02437d135341f0800e3d415312ae8.gif                BlogTopic xBlogTopic 
= new BlogTopic();
img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Title 
= post.title;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Content 
= post.description;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Weather 
= 0;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Face 
= 1;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.CommentNum 
= 0;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.IsBast 
= 0;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.IsShow 
= 1;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.ComeFrom 
= username;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Summary 
= "";
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.IsTop 
= 0;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.LastIp 
= HttpContext.Current.Request.Url.Host;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Hits 
= 0;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.CheckInTime 
= DateTime.Now;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Status 
= 1;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.MemberID 
= Convert.ToInt32(blogid);
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Tags 
= "";
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.BlogSystemTypeID 
= null;
img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.Score 
= 0;
img_33d02437d135341f0800e3d415312ae8.gif                
if (!string.IsNullOrEmpty(post.categories[0]))
img_2887d91d0594ef8793c1db92b8a1d545.gifimg_7a2b9a960ee9a98bfd25d306d55009f8.gif                
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif{
img_33d02437d135341f0800e3d415312ae8.gif                    
foreach (CategoryInfo info in getCategories(blogid, username, password))
img_2887d91d0594ef8793c1db92b8a1d545.gifimg_7a2b9a960ee9a98bfd25d306d55009f8.gif                    
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif{
img_33d02437d135341f0800e3d415312ae8.gif                        
if (info.title == post.categories[0])
img_2887d91d0594ef8793c1db92b8a1d545.gifimg_7a2b9a960ee9a98bfd25d306d55009f8.gif                        
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif{
img_33d02437d135341f0800e3d415312ae8.gif                            xBlogTopic.BlogKindID 
= int.Parse(info.categoryid);
img_33d02437d135341f0800e3d415312ae8.gif                            
break;
img_105a1e124122b2abcee4ea8e9f5108f3.gif                        }

img_105a1e124122b2abcee4ea8e9f5108f3.gif                    }

img_105a1e124122b2abcee4ea8e9f5108f3.gif                }

img_33d02437d135341f0800e3d415312ae8.gif                xBlogTopic.BastTime 
= null;
img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif                BlogTopicSystem.Instance.Create(xBlogTopic);
img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif                
return xBlogTopic.BlogTopicID.ToString();
img_105a1e124122b2abcee4ea8e9f5108f3.gif            }

img_33d02437d135341f0800e3d415312ae8.gif            
return "0";
img_05dd8d549cff04457a6366b0a7c9352a.gif        }

img_a6339ee3e57d1d52bc7d02b338e15a60.gif
相关文章
|
数据格式 XML
xml-rpc(1)-first demo
今天简单的研究了一下xml-rpc,做了一个小demo,使得最近开发的一个blog系统可以试用word2007来发表文章,现在还没有具体的实现,只是试Word能识别我写的Api. MetaWeblogService.
710 0
|
6月前
|
负载均衡 Dubbo Java
Dubbo 3.x:探索阿里巴巴的开源RPC框架新技术
随着微服务架构的兴起,远程过程调用(RPC)框架成为了关键组件。Dubbo,作为阿里巴巴的开源RPC框架,已经演进到了3.x版本,带来了许多新特性和技术改进。本文将探讨Dubbo 3.x中的一些最新技术,包括服务注册与发现、负载均衡、服务治理等,并通过代码示例展示其使用方式。
348 9
|
6月前
|
JSON 负载均衡 网络协议
Rpc编程系列文章第二篇:RPC框架设计目标
Rpc编程系列文章第二篇:RPC框架设计目标
|
6月前
|
设计模式 负载均衡 网络协议
【分布式技术专题】「分布式技术架构」实践见真知,手把手教你如何实现一个属于自己的RPC框架(架构技术引导篇)
【分布式技术专题】「分布式技术架构」实践见真知,手把手教你如何实现一个属于自己的RPC框架(架构技术引导篇)
255 0
|
10天前
|
自然语言处理 负载均衡 API
gRPC 一种现代、开源、高性能的远程过程调用 (RPC) 可以在任何地方运行的框架
gRPC 是一种现代开源高性能远程过程调用(RPC)框架,支持多种编程语言,可在任何环境中运行。它通过高效的连接方式,支持负载平衡、跟踪、健康检查和身份验证,适用于微服务架构、移动设备和浏览器客户端连接后端服务等场景。gRPC 使用 Protocol Buffers 作为接口定义语言,支持四种服务方法:一元 RPC、服务器流式处理、客户端流式处理和双向流式处理。
|
6月前
|
Dubbo Java 应用服务中间件
Rpc编程系列文章第三篇:Hessian RPC一个老的RPC框架
Rpc编程系列文章第三篇:Hessian RPC一个老的RPC框架
|
3月前
|
Dubbo 网络协议 Java
RPC框架:一文带你搞懂RPC
这篇文章全面介绍了RPC(远程过程调用)的概念、原理和应用场景,解释了RPC如何工作以及为什么在分布式系统中广泛使用,并探讨了几种常用的RPC框架如Thrift、gRPC、Dubbo和Spring Cloud,同时详细阐述了RPC调用流程和实现透明化远程服务调用的关键技术,包括动态代理和消息的编码解码过程。
RPC框架:一文带你搞懂RPC
|
2月前
|
XML 负载均衡 监控
分布式-dubbo-简易版的RPC框架
分布式-dubbo-简易版的RPC框架
|
3月前
|
XML 存储 JSON
(十二)探索高性能通信与RPC框架基石:Json、ProtoBuf、Hessian序列化详解
如今这个分布式风靡的时代,网络通信技术,是每位技术人员必须掌握的技能,因为无论是哪种分布式技术,都离不开心跳、选举、节点感知、数据同步……等机制,而究其根本,这些技术的本质都是网络间的数据交互。正因如此,想要构建一个高性能的分布式组件/系统,不得不思考一个问题:怎么才能让数据传输的速度更快?