<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>梁剑的Blog &#187; JavaScript</title>
	<atom:link href="http://icomes.net/category/%e6%8a%80%e6%9c%af%e7%ac%94%e8%ae%b0/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://icomes.net</link>
	<description>做有趣的事，做有用的人</description>
	<lastBuildDate>Wed, 23 Jun 2010 16:04:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Web实现服务器推的三种技术</title>
		<link>http://icomes.net/2009/10/24/web%e5%ae%9e%e7%8e%b0%e6%9c%8d%e5%8a%a1%e5%99%a8%e6%8e%a8%e7%9a%84%e4%b8%89%e7%a7%8d%e6%8a%80%e6%9c%af/</link>
		<comments>http://icomes.net/2009/10/24/web%e5%ae%9e%e7%8e%b0%e6%9c%8d%e5%8a%a1%e5%99%a8%e6%8e%a8%e7%9a%84%e4%b8%89%e7%a7%8d%e6%8a%80%e6%9c%af/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 07:07:00 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[技术笔记]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Server Push]]></category>
		<category><![CDATA[服务器推]]></category>

		<guid isPermaLink="false">http://icomes.net/?p=468</guid>
		<description><![CDATA[1. Hidden iframe
将iframe的src指向一个url，server收到请求后，Keep-Alive。
数据直接以script的方式下发到Browser，Browser收到数据后直接执行。
只要不超时，链接会一直保留。
优：感觉这是真正的长连接，对stream也有完整的支持。
劣：Browser状态栏会一直处于“连接中”，ESC会导致链接断开，会有跨域问题
2. Script Tag
用JS创建一个script对象，将该对象的src指向一个url，Keep-Alive。
在一定时间内（超时前），如果sever有数据下发，则用script的方式发送到Browser。
Browser收到数据后直接执行，此时需要重建script对象，建立另一个链接。
优：没有Hidden iframe的缺点，也比较轻量
劣：不是真正的长链接，每收到一个新的下发数据，都需要重新建立链接
3 AJAX
用JS创建一个XHR对象，将该对象的src指向一个url，Keep-Alive。
在一定时间内（超时前），如果sever有数据下发，则通过已建立的链接发送到Browser。
Browser收到数据后直接执行，此时需要重建XHR对象，建立另一个链接。
优：没有Hidden iframe的缺点
劣：存在跨域问题，不是真正的长链接，每收到一个新的下发数据，都需要重新建立链接
2 和 3也可以叫做Long Polling
除了这三种方法，还可以用Flash，由Flash和Server通信，页面用过JS和Flash通信。
这可以实现真正的下发，甚至不需要维护长链接。
但也可能存在被防火墙屏蔽的问题。
三种方法都用php模拟了一下：
Hidden Iframe

&#60;html&#62;
&#60;head&#62;
&#60;script&#62;
function callback&#40;data&#41;
&#123;
	document.getElementById&#40;&#34;t&#34;&#41;.value = data + &#34;\n&#34; + document.getElementById&#40;&#34;t&#34;&#41;.value;
&#125;
&#160;
callback&#40;&#34;abc&#34;&#41;;
&#60;/script&#62;
&#60;/head&#62;
&#60;body&#62;
hello
&#60;textarea id=&#34;t&#34;&#62;&#60;/textarea&#62;
&#60;iframe src=&#34;/hiddeniframe.php&#34; width=&#34;0&#34; height=&#34;0&#34;&#62;&#60;/iframe&#62;
&#60;/body&#62;
&#60;/html&#62;


&#60;?php
	ob_end_flush&#40;&#41;;
	echo &#34;&#60;script&#62;&#34;;
	echo &#34;domain=serverpush&#34;;
	echo &#34;&#60;/script&#62;&#34;;
	for&#40; ; ; &#41;
	&#123;
		$t = time&#40;&#41;;
		echo &#34;&#60;script&#62;&#34;;
		echo &#34;parent.callback($t);&#34;;
		echo &#34;&#60;/script&#62;&#34;;
		flush&#40;&#41;;
		sleep&#40;1&#41;;
	&#125;
?&#62;

Script Tag

&#60;html&#62;
&#60;head&#62;
&#60;script&#62;
function callback&#40;data&#41;
&#123;
	document.getElementById&#40;&#34;t&#34;&#41;.value = data + &#34;\n&#34; + document.getElementById&#40;&#34;t&#34;&#41;.value;
&#125;
&#160;
function connect&#40;&#41;
&#123;
    var _script = document.createElement&#40;&#34;script&#34;&#41;;
    _script.setAttribute&#40;&#34;type&#34;, &#34;text/javascript&#34;&#41;;
 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>1. Hidden iframe</strong></p>
<p>将iframe的src指向一个url，server收到请求后，Keep-Alive。<br />
数据直接以script的方式下发到Browser，Browser收到数据后直接执行。<br />
只要不超时，链接会一直保留。</p>
<p>优：感觉这是真正的长连接，对stream也有完整的支持。<br />
劣：Browser状态栏会一直处于“连接中”，ESC会导致链接断开，会有跨域问题</p>
<p><strong>2. Script Tag</strong></p>
<p>用JS创建一个script对象，将该对象的src指向一个url，Keep-Alive。<br />
在一定时间内（超时前），如果sever有数据下发，则用script的方式发送到Browser。<br />
Browser收到数据后直接执行，此时需要重建script对象，建立另一个链接。</p>
<p>优：没有Hidden iframe的缺点，也比较轻量<br />
劣：不是真正的长链接，每收到一个新的下发数据，都需要重新建立链接</p>
<p><strong>3 AJAX</strong></p>
<p>用JS创建一个XHR对象，将该对象的src指向一个url，Keep-Alive。<br />
在一定时间内（超时前），如果sever有数据下发，则通过已建立的链接发送到Browser。<br />
Browser收到数据后直接执行，此时需要重建XHR对象，建立另一个链接。</p>
<p>优：没有Hidden iframe的缺点<br />
劣：存在跨域问题，不是真正的长链接，每收到一个新的下发数据，都需要重新建立链接</p>
<p>2 和 3也可以叫做Long Polling</p>
<p>除了这三种方法，还可以用Flash，由Flash和Server通信，页面用过JS和Flash通信。<br />
这可以实现真正的下发，甚至不需要维护长链接。<br />
但也可能存在被防火墙屏蔽的问题。</p>
<p>三种方法都用php模拟了一下：</p>
<p>Hidden Iframe</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>html<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">function</span> callback<span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">value</span> <span style="color: #339933;">=</span> data <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #339933;">+</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">value</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
callback<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;abc&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>body<span style="color: #339933;">&gt;</span>
hello
<span style="color: #339933;">&lt;</span>textarea id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #339933;">&gt;&lt;/</span>textarea<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>iframe src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;/hiddeniframe.php&quot;</span> width<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;0&quot;</span> height<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;0&quot;</span><span style="color: #339933;">&gt;&lt;/</span>iframe<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>html<span style="color: #339933;">&gt;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #990000;">ob_end_flush</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;script&gt;&quot;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;domain=serverpush&quot;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;/script&gt;&quot;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span> <span style="color: #339933;">;</span> <span style="color: #339933;">;</span> <span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$t</span> <span style="color: #339933;">=</span> <span style="color: #990000;">time</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;script&gt;&quot;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;parent.callback(<span style="color: #006699; font-weight: bold;">$t</span>);&quot;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;/script&gt;&quot;</span><span style="color: #339933;">;</span>
		<span style="color: #990000;">flush</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #990000;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Script Tag</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>html<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">function</span> callback<span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">value</span> <span style="color: #339933;">=</span> data <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #339933;">+</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">value</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> connect<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #003366; font-weight: bold;">var</span> _script <span style="color: #339933;">=</span> document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;script&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    _script.<span style="color: #660066;">setAttribute</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;type&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    _script.<span style="color: #660066;">setAttribute</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;src&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;script.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    document.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;head&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #660066;">appendChild</span><span style="color: #009900;">&#40;</span>_script<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>	
<span style="color: #009900;">&#125;</span>
&nbsp;
connect<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>textarea id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #339933;">&gt;&lt;/</span>textarea<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>html<span style="color: #339933;">&gt;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #990000;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$r</span> <span style="color: #339933;">=</span> <span style="color: #990000;">time</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;callback(<span style="color: #006699; font-weight: bold;">$r</span>);&quot;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;setTimeout(connect, 1000)&quot;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>AJAX</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>html<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">function</span> callback<span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">value</span> <span style="color: #339933;">=</span> data <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #339933;">+</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">value</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> connect<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> ajax <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> XMLHttpRequest<span style="color: #339933;">;</span>
	ajax.<span style="color: #000066;">open</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;POST&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;ajax.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	ajax.<span style="color: #660066;">onreadystatechange</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>       
		<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>ajax.<span style="color: #660066;">readyState</span> <span style="color: #339933;">==</span> <span style="color: #CC0000;">4</span><span style="color: #009900;">&#41;</span>
		<span style="color: #009900;">&#123;</span>       
			<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>ajax.<span style="color: #000066;">status</span> <span style="color: #339933;">==</span> <span style="color: #CC0000;">200</span><span style="color: #009900;">&#41;</span> 
			<span style="color: #009900;">&#123;</span>       
				callback<span style="color: #009900;">&#40;</span>ajax.<span style="color: #660066;">responseText</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>	
				setTimeout<span style="color: #009900;">&#40;</span>connect<span style="color: #339933;">,</span> <span style="color: #CC0000;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>       
		<span style="color: #009900;">&#125;</span>       
	<span style="color: #009900;">&#125;</span>
	ajax.<span style="color: #660066;">send</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
connect<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>textarea id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;t&quot;</span><span style="color: #339933;">&gt;&lt;/</span>textarea<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>html<span style="color: #339933;">&gt;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #990000;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #990000;">time</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2009/10/24/web%e5%ae%9e%e7%8e%b0%e6%9c%8d%e5%8a%a1%e5%99%a8%e6%8e%a8%e7%9a%84%e4%b8%89%e7%a7%8d%e6%8a%80%e6%9c%af/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>遭遇JS跨域问题</title>
		<link>http://icomes.net/2009/01/23/%e9%81%ad%e9%81%87js%e8%b7%a8%e5%9f%9f%e9%97%ae%e9%a2%98/</link>
		<comments>http://icomes.net/2009/01/23/%e9%81%ad%e9%81%87js%e8%b7%a8%e5%9f%9f%e9%97%ae%e9%a2%98/#comments</comments>
		<pubDate>Thu, 22 Jan 2009 16:37:45 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[技术笔记]]></category>
		<category><![CDATA[跨域]]></category>

		<guid isPermaLink="false">http://icomes.net/?p=285</guid>
		<description><![CDATA[想在mail的一个页面里，用隐藏iframe引用soso的一个页面，加载后将数据取出。
但一直报错，说&#8230;undefine。
到群里咨询过前台高手们，原来又遇到所谓的“跨域”问题了。
处于安全性的考虑，JavaScript不允许脚本处理来自不同域(Domain)的资源。
用里的话说，就是同源策略(Same-Origin Policy)：
一个脚本只能读取与它同源（如由同一个主机下载、通过同一个端口下载或者下载协议相同）的窗口或文档的属性。
对于我的需求，常规的解决跨域问题的方法都不适用，而非常规手段又过于复杂，代价太大。
只有作罢了。
我所知的常规手段包括：

设置document.domain，只适合位于不同子域的页面中使用
采用proxy页面中转

非常规手段

借助Flash
GreaseMonkey

很久没写JS了~~~

function Search&#40;&#41;
&#123;
	var keyword = $&#40;&#34;keyword&#34;&#41;.value;
	debug&#40;&#34;search for &#34; + keyword&#41;;
	var url = &#34;http://qzone.soso.com/qz.q?&#38;amp;sc=qz&#38;amp;pid=qz.s.idx&#38;amp;ch=s.qz.diary&#38;amp;pg=1&#38;amp;ty=diary&#38;amp;w=&#34; + keyword;
&#160;
	var soso = document.createElement&#40;&#34;iframe&#34;&#41;;
	soso.setAttribute&#40;&#34;onload&#34;, &#34;ParseResult()&#34;&#41;;
	soso.setAttribute&#40;&#34;src&#34;, url&#41;;
	soso.setAttribute&#40;&#34;id&#34;, &#34;soso&#34;&#41;;
	document.getElementsByTagName&#40;&#34;body&#34;&#41;&#91;0&#93;.appendChild&#40;soso&#41;;
	return false;
&#125;
&#160;
function ParseResult&#40;&#41;
&#123;
	debug&#40;&#34;begin to parse&#34;&#41;;
	var soso = $&#40;&#34;soso&#34;&#41;;
	if&#40;!soso&#41;
		return;
&#160;
//	var ids = document.frames[0].contentWindow.document.getElementsByTagName(&#34;div&#34;);
	var ids = document.getElementById&#40;&#34;soso&#34;&#41;.contentWindow.document.getElementsByTagName&#40;&#34;div&#34;&#41;;
&#160;
	for&#40; var i = 0; i &#38;lt; ids.length; i++&#41;
	&#123;
		var d = ids&#91;i&#93;;
		if&#40; d.getAttribte&#40;&#34;ss_c&#34;&#41; == &#34;qz.show.res&#34;&#41;
		&#123;
			debug&#40;&#34;found&#34;&#41;;
		&#125;
		else
		&#123;
			debug&#40;d.className&#41;;
		&#125;
	&#125;
	debug&#40;&#34;end of parse&#34;&#41;;
	document.getElementsByTagName&#40;&#34;body&#34;&#41;&#91;0&#93;.removeChild&#40;$&#40;&#34;soso&#34;&#41;&#41;;
&#125;

]]></description>
			<content:encoded><![CDATA[<p>想在mail的一个页面里，用隐藏iframe引用soso的一个页面，加载后将数据取出。<br />
但一直报错，说&#8230;undefine。<br />
到群里咨询过前台高手们，原来又遇到所谓的“跨域”问题了。</p>
<p>处于安全性的考虑，JavaScript不允许脚本处理来自不同域(Domain)的资源。<br />
用里的话说，就是同源策略(Same-Origin Policy)：</p>
<blockquote><p>一个脚本只能读取与它同源（如由同一个主机下载、通过同一个端口下载或者下载协议相同）的窗口或文档的属性。</p></blockquote>
<p>对于我的需求，常规的解决跨域问题的方法都不适用，而非常规手段又过于复杂，代价太大。<br />
只有作罢了。</p>
<p>我所知的常规手段包括：</p>
<ol>
<li>设置document.domain，只适合位于不同子域的页面中使用</li>
<li>采用proxy页面中转</li>
</ol>
<p>非常规手段</p>
<ol>
<li>借助Flash</li>
<li>GreaseMonkey</li>
</ol>
<p>很久没写JS了~~~</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> Search<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> keyword <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;keyword&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">value</span><span style="color: #339933;">;</span>
	debug<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;search for &quot;</span> <span style="color: #339933;">+</span> keyword<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> url <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;http://qzone.soso.com/qz.q?&amp;amp;sc=qz&amp;amp;pid=qz.s.idx&amp;amp;ch=s.qz.diary&amp;amp;pg=1&amp;amp;ty=diary&amp;amp;w=&quot;</span> <span style="color: #339933;">+</span> keyword<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #003366; font-weight: bold;">var</span> soso <span style="color: #339933;">=</span> document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;iframe&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	soso.<span style="color: #660066;">setAttribute</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;onload&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;ParseResult()&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	soso.<span style="color: #660066;">setAttribute</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;src&quot;</span><span style="color: #339933;">,</span> url<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	soso.<span style="color: #660066;">setAttribute</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;id&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;soso&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	document.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;body&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #660066;">appendChild</span><span style="color: #009900;">&#40;</span>soso<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> ParseResult<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	debug<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;begin to parse&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> soso <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;soso&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>soso<span style="color: #009900;">&#41;</span>
		<span style="color: #000066; font-weight: bold;">return</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #006600; font-style: italic;">//	var ids = document.frames[0].contentWindow.document.getElementsByTagName(&quot;div&quot;);</span>
	<span style="color: #003366; font-weight: bold;">var</span> ids <span style="color: #339933;">=</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;soso&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">contentWindow</span>.<span style="color: #660066;">document</span>.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;div&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000066; font-weight: bold;">for</span><span style="color: #009900;">&#40;</span> <span style="color: #003366; font-weight: bold;">var</span> i <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> i <span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span> ids.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #003366; font-weight: bold;">var</span> d <span style="color: #339933;">=</span> ids<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
		<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span> d.<span style="color: #660066;">getAttribte</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;ss_c&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #3366CC;">&quot;qz.show.res&quot;</span><span style="color: #009900;">&#41;</span>
		<span style="color: #009900;">&#123;</span>
			debug<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;found&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
		<span style="color: #000066; font-weight: bold;">else</span>
		<span style="color: #009900;">&#123;</span>
			debug<span style="color: #009900;">&#40;</span>d.<span style="color: #660066;">className</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
	debug<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;end of parse&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	document.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;body&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #660066;">removeChild</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;soso&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2009/01/23/%e9%81%ad%e9%81%87js%e8%b7%a8%e5%9f%9f%e9%97%ae%e9%a2%98/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>阅读空间的GM脚本</title>
		<link>http://icomes.net/2009/01/17/%e9%98%85%e8%af%bb%e7%a9%ba%e9%97%b4%e7%9a%84gs%e8%84%9a%e6%9c%ac/</link>
		<comments>http://icomes.net/2009/01/17/%e9%98%85%e8%af%bb%e7%a9%ba%e9%97%b4%e7%9a%84gs%e8%84%9a%e6%9c%ac/#comments</comments>
		<pubDate>Sat, 17 Jan 2009 03:05:49 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[技术笔记]]></category>
		<category><![CDATA[greasemonkey]]></category>
		<category><![CDATA[qqmail]]></category>
		<category><![CDATA[reader]]></category>

		<guid isPermaLink="false">http://icomes.net/?p=265</guid>
		<description><![CDATA[Google Reader有462个GM脚本（GreaseFire的结果），而整个qq.com的域名只有一个，是用来优化qq.com的打印功能的。
这样的对比反映出了Geek们对两个域名的认同差异吧。
早上起床，写了一个用于用于阅读空间GS脚本。
just for fun啦，主要功能是在阅读时改变背景色，因为感觉现在的色彩有点单调。
已经上传到userscrips，可以在这里找到。
效果图：)

可惜Qzone对Firefox的支持还不好，否则也可以做一个：）
出去晒太阳了～～～
]]></description>
			<content:encoded><![CDATA[<p>Google Reader有462个GM脚本（GreaseFire的结果），而整个qq.com的域名只有一个，是用来优化qq.com的打印功能的。<br />
这样的对比反映出了Geek们对两个域名的认同差异吧。</p>
<p>早上起床，写了一个用于用于阅读空间GS脚本。<br />
just for fun啦，主要功能是在阅读时改变背景色，因为感觉现在的色彩有点单调。</p>
<p>已经上传到userscrips，可以在<a title="QQ Mail User Script" href="http://userscripts.org/scripts/show/40618" target="_blank">这里</a>找到。</p>
<p>效果图：)<br />
<img class="size-medium wp-image-267" title="qqmail_reader_list" src="http://icomes.net/wp-content/uploads/2009/01/qqmail_reader_list-300x180.png" alt="阅读空间" width="300" height="180" /></p>
<p>可惜Qzone对Firefox的支持还不好，否则也可以做一个：）</p>
<p>出去晒太阳了～～～</p>
]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2009/01/17/%e9%98%85%e8%af%bb%e7%a9%ba%e9%97%b4%e7%9a%84gs%e8%84%9a%e6%9c%ac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GreaseMonkey不支持onEvent?</title>
		<link>http://icomes.net/2009/01/16/greasemonkey%e4%b8%8d%e6%94%af%e6%8c%81onevent/</link>
		<comments>http://icomes.net/2009/01/16/greasemonkey%e4%b8%8d%e6%94%af%e6%8c%81onevent/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 15:56:27 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[技术笔记]]></category>
		<category><![CDATA[greasemonkey]]></category>

		<guid isPermaLink="false">http://icomes.net/?p=261</guid>
		<description><![CDATA[如果用obj.onclick = function(){&#8230;}，
则脚本会异常终止。
改用addEventListener(&#8220;click&#8221;, function(){&#8230;}, true)，
则一切正常。
]]></description>
			<content:encoded><![CDATA[<p>如果用obj.onclick = function(){&#8230;}，<br />
则脚本会异常终止。<br />
改用addEventListener(&#8220;click&#8221;, function(){&#8230;}, true)，<br />
则一切正常。</p>
]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2009/01/16/greasemonkey%e4%b8%8d%e6%94%af%e6%8c%81onevent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>试用FCKedit</title>
		<link>http://icomes.net/2008/10/22/%e8%af%95%e7%94%a8fckedit/</link>
		<comments>http://icomes.net/2008/10/22/%e8%af%95%e7%94%a8fckedit/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 15:15:47 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[editor WYSIWYG php]]></category>

		<guid isPermaLink="false">http://tridot.cn/?p=190</guid>
		<description><![CDATA[想给自己写的log加上一个WYSIWYG，
于是google一番，
找到某人推荐的fckedit。
其实之前已经在wp里试过，感觉一般。
不过这次是要和自己的程序整合，所以了解比之前深入。
看了一下sample，然后用了不到10分钟就拼凑出一个可以工作的版本。
得益于实用的例子、详细的注释和通用的命名，
优秀的程序都应该这样。
]]></description>
			<content:encoded><![CDATA[<p>想给自己写的log加上一个WYSIWYG，<br />
于是google一番，<br />
找到某人推荐的<a title="FCKeditor" href="www.fckeditor.net/" target="_blank"><cite>fckedit</cite></a>。</p>
<p>其实之前已经在wp里试过，感觉一般。<br />
不过这次是要和自己的程序整合，所以了解比之前深入。</p>
<p>看了一下sample，然后用了不到10分钟就拼凑出一个可以工作的版本。<br />
得益于实用的例子、详细的注释和通用的命名，<br />
优秀的程序都应该这样。</p>
]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2008/10/22/%e8%af%95%e7%94%a8fckedit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>js的深拷贝函数</title>
		<link>http://icomes.net/2008/07/07/js%e7%9a%84%e6%b7%b1%e6%8b%b7%e8%b4%9d%e5%87%bd%e6%95%b0/</link>
		<comments>http://icomes.net/2008/07/07/js%e7%9a%84%e6%b7%b1%e6%8b%b7%e8%b4%9d%e5%87%bd%e6%95%b0/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 03:10:27 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[技术笔记]]></category>

		<guid isPermaLink="false">http://tridot.cn/?p=147</guid>
		<description><![CDATA[
function objectClone(obj,preventName){
if((typeof obj)==&#8217;object&#8217;){
var res=(!obj.sort)?{}:[];
for(var i in obj){
if(i!=preventName)
res[i]=objectClone(obj[i],preventName);
}
return res;
}else if((typeof obj)==&#8217;function&#8217;){
return (new obj()).constructor;
}
return obj;
}

同事的作品：）
]]></description>
			<content:encoded><![CDATA[<p><coolcode lang="javascript"><br />
function objectClone(obj,preventName){<br />
if((typeof obj)==&#8217;object&#8217;){<br />
var res=(!obj.sort)?{}:[];<br />
for(var i in obj){<br />
if(i!=preventName)<br />
res[i]=objectClone(obj[i],preventName);<br />
}<br />
return res;<br />
}else if((typeof obj)==&#8217;function&#8217;){<br />
return (new obj()).constructor;<br />
}<br />
return obj;<br />
}<br />
</coolcode></p>
<p>同事的作品：）</p>
]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2008/07/07/js%e7%9a%84%e6%b7%b1%e6%8b%b7%e8%b4%9d%e5%87%bd%e6%95%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javascript中!!的作用</title>
		<link>http://icomes.net/2008/05/12/javascript%e4%b8%ad%e7%9a%84%e4%bd%9c%e7%94%a8/</link>
		<comments>http://icomes.net/2008/05/12/javascript%e4%b8%ad%e7%9a%84%e4%bd%9c%e7%94%a8/#comments</comments>
		<pubDate>Mon, 12 May 2008 02:58:33 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[技术笔记]]></category>

		<guid isPermaLink="false">http://tridot.cn/?p=126</guid>
		<description><![CDATA[var wintype = !!os[1];
取变量的Boolean值，
应该相当于 var wintype = os[1]?true:false，
但显然简洁很多。
]]></description>
			<content:encoded><![CDATA[<p>var wintype = !!os[1];</p>
<p>取变量的Boolean值，<br />
应该相当于 var wintype = os[1]?true:false，<br />
但显然简洁很多。</p>
]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2008/05/12/javascript%e4%b8%ad%e7%9a%84%e4%bd%9c%e7%94%a8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>获取页面高度的函数</title>
		<link>http://icomes.net/2007/12/21/%e8%8e%b7%e5%8f%96%e9%a1%b5%e9%9d%a2%e9%ab%98%e5%ba%a6%e7%9a%84%e5%87%bd%e6%95%b0/</link>
		<comments>http://icomes.net/2007/12/21/%e8%8e%b7%e5%8f%96%e9%a1%b5%e9%9d%a2%e9%ab%98%e5%ba%a6%e7%9a%84%e5%87%bd%e6%95%b0/#comments</comments>
		<pubDate>Fri, 21 Dec 2007 02:29:32 +0000</pubDate>
		<dc:creator>梁剑</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[技术笔记]]></category>

		<guid isPermaLink="false">http://liangjianhua.com/?p=71</guid>
		<description><![CDATA[
function getHeight(){
s  =  &#8220;网页可见区域宽：&#8221;+  document.body.clientWidth;
s  +=  &#8220;\r\n网页可见区域高：&#8221;+  document.body.clientHeight;
s  +=  &#8220;\r\n网页可见区域高：&#8221;+  document.body.offsetWeight  +&#8221;  (包括边线的宽)&#8221;;
s  +=  &#8220;\r\n网页可见区域高：&#8221;+  document.body.offsetHeight  +&#8221;  (包括边线的宽)&#8221;;
s  +=  &#8220;\r\n网页正文全文宽：&#8221;+  document.body.scrollWidth;
s  +=  &#8220;\r\n网页正文全文高：&#8221;+  document.body.scrollHeight;
s  +=  &#8220;\r\n网页被卷去的高：&#8221;+  document.body.scrollTop;
s  +=  [...]]]></description>
			<content:encoded><![CDATA[<p><coolcode lang="javascript"><br />
function getHeight(){<br />
s  =  &#8220;网页可见区域宽：&#8221;+  document.body.clientWidth;<br />
s  +=  &#8220;\r\n网页可见区域高：&#8221;+  document.body.clientHeight;<br />
s  +=  &#8220;\r\n网页可见区域高：&#8221;+  document.body.offsetWeight  +&#8221;  (包括边线的宽)&#8221;;<br />
s  +=  &#8220;\r\n网页可见区域高：&#8221;+  document.body.offsetHeight  +&#8221;  (包括边线的宽)&#8221;;<br />
s  +=  &#8220;\r\n网页正文全文宽：&#8221;+  document.body.scrollWidth;<br />
s  +=  &#8220;\r\n网页正文全文高：&#8221;+  document.body.scrollHeight;<br />
s  +=  &#8220;\r\n网页被卷去的高：&#8221;+  document.body.scrollTop;<br />
s  +=  &#8220;\r\n网页被卷去的左：&#8221;+  document.body.scrollLeft;<br />
s  +=  &#8220;\r\n网页正文部分上：&#8221;+  window.screenTop;<br />
s  +=  &#8220;\r\n网页正文部分左：&#8221;+  window.screenLeft;<br />
s  +=  &#8220;\r\n屏幕分辨率的高：&#8221;+  window.screen.height;<br />
s  +=  &#8220;\r\n屏幕分辨率的宽：&#8221;+  window.screen.width;<br />
s  +=  &#8220;\r\n屏幕可用工作区高度：&#8221;+  window.screen.availHeight;<br />
s  +=  &#8220;\r\n屏幕可用工作区宽度：&#8221;+  window.screen.availWidth;<br />
s =   &#8220;\r\n网页正文全文高：&#8221;+  document.body.scrollHeight;<br />
alert(s);<br />
}<br />
</coolcode></p>
]]></content:encoded>
			<wfw:commentRss>http://icomes.net/2007/12/21/%e8%8e%b7%e5%8f%96%e9%a1%b5%e9%9d%a2%e9%ab%98%e5%ba%a6%e7%9a%84%e5%87%bd%e6%95%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
