Hi
I have a Squeklet running in Internet Explorer, it uses the *"HTTPSocket>>httpGetDocument: url args: args accept: mimeType request: requestString"* method to make HTTP requests to a web site running on IIS. This works fine under normal circumstances, but when the IIS setting is changed to "Require SSL", the method fails.
Initially I thought it was due to this line:
bare _ (url asLowercase beginsWith: 'http://') ifTrue: [url copyFrom: 8 to: url size] ifFalse: [url].
which obviously would not work with a url starting with "https://", so I changed the line to this:
bare _ (url asLowercase beginsWith: 'http://') ifTrue: [url copyFrom: 8 to: url size] ifFalse: [ (url asLowercase beginsWith: 'https://') ifTrue: [url copyFrom: 9 to: url size] ifFalse: [url]. ].
Squeak now attempts to send through the request, but IIS refuses to serve the page. I think it is because the HTTPSocket issues a request without specifying the scheme to be used, as it is simply stripped off the url and discarded, but I don't know where to change it so that it will issue a request using the "https://" scheme.
Any assistance with this would be greatly appreciated.
Thanks
RUDOLF COETSEE
Rudolf, Basically your problem is that squeak doesn't support natively SSL transfers yet. If you are using windows - you may try the interface to libcurl library that does (http://minnow.cc.gatech.edu/squeak/5865):
(Curl new caInfo: 'e:\squeak\cacert.pem'; "you can use certificate file" "offSSLVerifyPeer;" "or disable SSL verify check completely" getUrl: 'https://www.google.com/index.html') contents
Cheers, Danil
On Tue, 05 Sep 2006 12:27:50 +0300, Rudolf Coetsee rudolfcoetsee@gmail.com wrote:
Hi
I have a Squeklet running in Internet Explorer, it uses the *"HTTPSocket>>httpGetDocument: url args: args accept: mimeType request: requestString"* method to make HTTP requests to a web site running on IIS. This works fine under normal circumstances, but when the IIS setting is changed to "Require SSL", the method fails.
Initially I thought it was due to this line:
bare _ (url asLowercase beginsWith: 'http://') ifTrue: [url copyFrom: 8 to: url size] ifFalse: [url].
which obviously would not work with a url starting with "https://", so I changed the line to this:
bare _ (url asLowercase beginsWith: 'http://') ifTrue: [url copyFrom: 8 to: url size] ifFalse: [ (url asLowercase beginsWith: 'https://') ifTrue: [url copyFrom: 9 to: url size] ifFalse: [url]. ].
Squeak now attempts to send through the request, but IIS refuses to serve the page. I think it is because the HTTPSocket issues a request without specifying the scheme to be used, as it is simply stripped off the url and discarded, but I don't know where to change it so that it will issue a request using the "https://" scheme.
Any assistance with this would be greatly appreciated.
Thanks
RUDOLF COETSEE
danil osipchuk schrieb:
Rudolf, Basically your problem is that squeak doesn't support natively SSL transfers yet.
... which is why normally, you would request urls through the browser using HTTPClient instead of HTTPSocket directly. That also utilizes the browser's cache, proxy settings etc.
Unfortunately, support for the browser plugin primitives is browser dependent.
- Bert -
On Tue, 05 Sep 2006 12:27:50 +0300, Rudolf Coetsee rudolfcoetsee@gmail.com wrote:
Hi
I have a Squeklet running in Internet Explorer, it uses the *"HTTPSocket>>httpGetDocument: url args: args accept: mimeType request: requestString"* method to make HTTP requests to a web site running on IIS. This works fine under normal circumstances, but when the IIS setting is changed to "Require SSL", the method fails.
Initially I thought it was due to this line:
bare _ (url asLowercase beginsWith: 'http://') ifTrue: [url copyFrom: 8 to: url size] ifFalse: [url].
which obviously would not work with a url starting with "https://", so I changed the line to this:
bare _ (url asLowercase beginsWith: 'http://') ifTrue: [url copyFrom: 8 to: url size] ifFalse: [ (url asLowercase beginsWith: 'https://') ifTrue: [url copyFrom: 9 to: url size] ifFalse: [url]. ].
Squeak now attempts to send through the request, but IIS refuses to serve the page. I think it is because the HTTPSocket issues a request without specifying the scheme to be used, as it is simply stripped off the url and discarded, but I don't know where to change it so that it will issue a request using the "https://" scheme.
Any assistance with this would be greatly appreciated.
Thanks
RUDOLF COETSEE
squeak-dev@lists.squeakfoundation.org