2011-12-15 54 views
0

今天的問題涉及使用加密字符串的URLLoader請求。URLLoader的Flex請求在服務器端沒有得到很好的接收

當我加密的字符串,我得到以下結果:

1Kx4dfp5OC7ox0zb0lWzzzlnoPLcoPGE1MrAKOtl3h6SPcFmEdpLnUROSKpPrCl70VHRxrKzhsxHHlb1MRp3++JkvYZ++ghBEG2zbVhyaqQ/0+NDrJ+0cLt3g9THe9POohN6Ufcq9TcnmZVvIFXllg4HrjVNfQrhQCNwxuBgWBf2DRc4eq6hKzEgyLdlllQFc9ssUFlPD3wOBqoI22r+7N82sI3pqsQYBq5VlKHHreqD8Cq0gictnTFS3IqepASGARKyuCIPDCa4zE76VeQV5zgvkFfjDww+C1uZ8PUgjH67DKYqUP9a6euf2v1jUpBrREnm4ZbLAXScDjvrJ11rWYyVXOLZy9nhy9qRBQRvdw+tnBThPTmvxaq+LAusF8IbvDpZgMrZ3buvThnXuSBGXZxaja7fk/FIlm4RSliDTSGySiizFHy7dJePXuV0c9MI6ciOYxmEIg64NnhBZtB8wipUDJWOpoytOD2/sNQBenjZbYN8291msYnbBG+alAOQmEBH5Mn4KyW1VQWE2lBGk9ML+SflND8UXfdHz5Q3psOcMZJxSAURKGq5tjA8KlPPOAdQuVPIcysg2/4lV25QGIdDttQVGrkP+ZHZcHIPTLLD+Vml+PJU/OAJGNPGlf3wawUo+bID0FKur8N6tNyu7Pnoocn7plDi6WSJgUAaYjI4= 

我送它,一切似乎罰款Flex的結束。但是,當我去到服務器端(日誌文件,不允許更改服務器端代碼)檢查什麼我得到,我結束了這一點:

1Kx4dfp5OC7ox0zb0lWzzzlnoPLcoPGE1MrAKOtl3h6SPcFmEdpLnUROSKpPrCl70VHRxrKzhsxHHlb1MRp3 JkvYZ ghBEG2zbVhyaqQ/0 NDrJ 0cLt3g9THe9POohN6Ufcq9TcnmZVvIFXllg4HrjVNfQrhQCNwxuBgWBf2DRc4eq6hKzEgyLdlllQFc9ssUFlPD3wOBqoI22r 7N82sI3pqsQYBq5VlKHHreqD8Cq0gictnTFS3IqepASGARKyuCIPDCa4zE76VeQV5zgvkFfjDww C1uZ8PUgjH67DKYqUP9a6euf2v1jUpBrREnm4ZbLAXScDjvrJ11rWYyVXOLZy9nhy9qRBQRvdw tnBThPTmvxaq LAusF8IbvDpZgMrZ3buvThnXuSBGXZxaja7fk/FIlm4RSliDTSGySiizFHy7dJePXuV0c9MI6ciOYxmEIg64NnhBZtB8wipUDJWOpoytOD2/sNQBenjZbYN8291msYnbBG alAOQmEBH5Mn4KyW1VQWE2lBGk9ML SflND8UXfdHz5Q3psOcMZJxSAURKGq5tjA8KlPPOAdQuVPIcysg2/4lV25QGIdDttQVGrkP ZHZcHIPTLLD Vml PJU/OAJGNPGlf3wawUo bID0FKur8N6tNyu7Pnoocn7plDi6WSJgUAaYjI4= 

乍一看它們是相同的,但如果你仔細查看,+會被空白符替換...

我甚至試着切換%2B的+,但在服務器端它讀取爲%2B,它不會轉換爲+(flex在這種情況下似乎不起瀏覽器的作用)。

任何有關此事的見解和幫助將非常感激。

public function callService(callback:String, request:String):void{ 
     var url:URLRequest = new URLRequest(server); 
     var requestedString:String = handlePluses(request); 
     url.useCache = false; 
     url.contentType = contentType; 
     url.method = method; 
     trace("sending: " + requestedString); 
     url.data += requestedString); 
     serverURL.addEventListener(IOErrorEvent.IO_ERROR, treatIO); 
     serverURL.dataFormat = URLLoaderDataFormat.TEXT; 
     serverURL.addEventListener(Event.COMPLETE, loadData); 
     serverURL.addEventListener(Event.CONNECT, function():void{trace("connected");}); 
     try{   
      serverURL.load(url); 
     }catch(e:ArgumentError){trace("ArgError: " + e.message);} 
     catch(e:SecurityError){trace("SecError: " + e.message);} 
     catch(e:TimeoutEvent){trace("===========<Timeout>===========");} 
    } 

回答

0

我們用轉義字符像\&\#一個子集切換字符+固定這個問題:

的請求如下正在做。

這可能是他人嘗試同樣的事情並試圖保持最小尺寸的問題。