[Pharo-project] Decode url form with Zinc-HTTP

Hernán Morales Durand hernan.morales at gmail.com
Thu Apr 7 17:37:13 CEST 2011


One more thing, I've tried to install in the new released Pharo with CogVM:

Gofer new
		squeaksource: 'ZincHTTPComponents';
		package: 'ConfigurationOfZincHTTPComponents';
		load.
(Smalltalk at: #ConfigurationOfZincHTTPComponents) perform: #load

and loading manually the latest Zinc-HTTP from the Monticello Browser.

either way I get errors (attached debugger output from the
ConfigurationOf script). What is the proper way to install or update
to the latest version,
Cheers,


2011/4/7 Hernán Morales Durand <hernan.morales at gmail.com>:
> Cool. Thanks Sven!
>
> 2011/4/7 Sven Van Caekenberghe <sven at beta9.be>:
>> Hernán,
>>
>> From the class comment of ZnUrl:
>>
>> [...]
>>
>>        The methods in accessing protocols do not do any encoding, those in printing do.
>>
>> [...]
>>
>> Taking your example:
>>
>>  (ZnUrl fromString:
>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi%3Fdb%3Dnuccore%26term%3Dscience%5Bjournal%5D%2BAND%2Bbreast%2Bcancer%2BAND%2B2009%5Bpdat%5D') pathSegments
>>
>>        an OrderedCollection('entrez' 'eutils' 'esearch.fcgi?db=nuccore&term=science[journal]+AND+breast+cancer+AND+2009[pdat]')
>>
>> (ZnUrl fromString:
>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi%3Fdb%3Dnuccore%26term%3Dscience%5Bjournal%5D%2BAND%2Bbreast%2Bcancer%2BAND%2B2009%5Bpdat%5D') path
>>
>>        'entrez/eutils/esearch.fcgi?db=nuccore&term=science[journal]+AND+breast+cancer+AND+2009[pdat]'
>>
>> (ZnUrl fromString:
>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi%3Fdb%3Dnuccore%26term%3Dscience%5Bjournal%5D%2BAND%2Bbreast%2Bcancer%2BAND%2B2009%5Bpdat%5D') printString
>>
>>        'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi%3Fdb%3Dnuccore%26term%3Dscience%5Bjournal%5D%2BAND%2Bbreast%2Bcancer%2BAND%2B2009%5Bpdat%5D'
>>
>> If you inspect a ZnUrl instance you will notice that the internal Smalltalk representation is unencoded. But its #printString and the argument to #fromString: are. You could programmatically build up a ZnUrl using accessors and supplying unencoded (path) elements.
>>
>> HTH,
>>
>> Sven
>>
>> On 06 Apr 2011, at 22:38, Hernán Morales Durand wrote:
>>
>>> Hi Sven,
>>>
>>> In WebUtils one can decode an URL this way
>>>
>>> ( WebUtils decodeUrlEncodedForm:
>>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi%3Fdb%3Dnuccore%26term%3Dscience%5Bjournal%5D%2BAND%2Bbreast%2Bcancer%2BAND%2B2009%5Bpdat%5D'
>>> ) keys anyOne
>>>
>>> resulting in
>>>
>>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nuccore&term=science[journal]+AND+breast+cancer+AND+2009[pdat]'
>>>
>>> In Zinc-HTTP I didn't find a method for decoding an encoded HTTP address:
>>>
>>> ( ZnUrl fromString:
>>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi%3Fdb%3Dnuccore%26term%3Dscience%5Bjournal%5D%2BAND%2Bbreast%2Bcancer%2BAND%2B2009%5Bpdat%5D'
>>> ) .... ?
>>>
>>> but there is #unescapePercents in Network package (by the way if it's
>>> the opposite of #encodeForHTTP shouldn't be #decodeFromHTTP ?)
>>>
>>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi%3Fdb%3Dnuccore%26term%3Dscience%5Bjournal%5D%2BAND%2Bbreast%2Bcancer%2BAND%2B2009%5Bpdat%5D'
>>> unescapePercents
>>>
>>> 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nuccore&term=science[journal]+AND+breast+cancer+AND+2009[pdat]'
>>>
>>> but I want to maximize package dependency and not system dependency.
>>> Is there a way to decode url's in Zinc-HTTP without use
>>> #unescapePercents ?
>>>
>>> Cheers,
>>>
>>> --
>>> Hernán Morales
>>> Information Technology Manager,
>>> Institute of Veterinary Genetics.
>>> National Scientific and Technical Research Council (CONICET).
>>> La Plata (1900), Buenos Aires, Argentina.
>>> Telephone: +54 (0221) 421-1799.
>>> Internal: 422
>>> Fax: 425-7980 or 421-1799.
>>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: updateZnHTTP.txt
URL: <http://lists.gforge.inria.fr/pipermail/pharo-project/attachments/20110407/ba28b7ed/attachment.txt>


More information about the Pharo-project mailing list