login about faq

Hi

I am using chilkat v9.5.0.51 Mono on Mac, Xamarin iOS & Android. After setting preferIpv6 to true on my Http object, some servers fail to be requested, for instance:

http://nominatim.openstreetmap.org/search?q=sabah&format=xml&limit=20

https://maps.googleapis.com/maps/api/staticmap?center=34.2065687282483,-117.859450371377&zoom=16&size=638x667&sensor=true&format=png&maptype=hybrid

If preferIpv6 is false, these requests work fine. Is it a server issue? Can I fix it on the client side?

Thanks Guillaume

asked Jul 04 at 21:02

Augview's gravatar image

Augview
32


Updating to Chilkat v9.5.0.58 should fix the problem. I just tested it, and it worked fine.

link

answered Jul 06 at 10:11

chilkat's gravatar image

chilkat ♦♦
11.8k316358421

Can you update chilkat Xamarin component? the download link says v9.5.0.56

Thanks.

(Jul 28 at 21:48) Augview

Unfortunately, the Xamarin build won't be updated for another few weeks to a month. (The reason is that Xamarin itself has changed so much recently (after the Microsoft acquisition) and Chilkat needs to explore how to adjust to fit existing users better.)

(Jul 29 at 09:34) chilkat ♦♦

Updating chilkat did not fix the issue unfortunately.

(Oct 06 at 22:33) Augview

Make sure your ISP supports IPv6. Also make sure your computer is capable of using IPv6. For me, my normal work environment does not have IPv6 capability, which means to test I must run on some remote server (web hosting account, etc.).

If I run on my local computer where IPv6 is not possible, then I see only IPv4 addresses w/ verbose logging turned on, and therefore the connection happens over IPv4 even if PreferIpv6 is true.

If I run on a web server where IPv6 is possible, then everything works (for me). For example, I just tested the following Perl script:

use lib qw(./chilkat/myPerl/share/perl5/); 
use chilkat();

$http = new chilkat::CkHttp();

# Any string unlocks the component for the 1st 30-days. $success = $http->UnlockComponent("Anything for 30-day trial"); if ($success != 1) { print $http->lastErrorText() . "\r\n"; exit; }

$http->put_VerboseLogging(1);

$http->put_PreferIpv6(1);

$response = $http->quickGetStr("http://nominatim.openstreetmap.org/search?q=sabah&format=xml&limit=20"); if ($http->get_LastMethodSuccess() != 1) { print $http->lastErrorText() . "\r\n"; exit; }

print $response . "\r\n"; print $http->lastErrorText() . "\r\n";

The LastErrorText shows the IPv6 address and that it was used for the connection:
ChilkatLog:
  QuickGetStr(271ms):
    DllDate: Oct  7 2016
    ChilkatVersion: 9.5.0.61
    UnlockPrefix: Anything for 30-day trial
    Architecture: Little Endian; 64-bit
    Language: Linux Perl
    VerboseLogging: 1
    url: http://nominatim.openstreetmap.org/search?q=sabah&format=xml&limit=20
    httpRequestStr(271ms):
      a_quickReq(271ms):
        quickHttpRequest(271ms):
          httpVerb: GET
          url: http://nominatim.openstreetmap.org/search?q=sabah&format=xml&limit=20
          openHttpConnection(110ms):
            Opening connection directly to HTTP server.
            httpHostname: nominatim.openstreetmap.org
            httpPort: 80
            ssl: 0
            bUsingHttpProxy: 0
            httpProxyAuthMethod: 
            socket2Connect(110ms):
              connect2(110ms):
                hostname: nominatim.openstreetmap.org
                port: 80
                ssl: 0
                connectSocket(110ms):
                  domainOrIpAddress: nominatim.openstreetmap.org
                  port: 80
                  connectTimeoutMs: 30000
                  connect_ipv6_or_ipv4(110ms):
                    Single-threaded domain to IP address resolution
                    The application prefers IPv6 over IPv4. Looking for IPv6 addresses first...
                    connecting to IPV6 address...
                    ipAddress: 2001:630:12:500:ec4:7aff:fe66:96d2
                    createSocket:
                      Setting SO_SNDBUF size
                      sendBufSize: 262144
                      Setting SO_RCVBUF size
                      recvBufSize: 4194304
                    --createSocket
                    connect(110ms):
                      Waiting for the connect to complete...
                      myIP: 2607:f0d0:1103:106:22::12c
                      myPort: 36184
                      socket connect successful.
                    --connect
                  --connect_ipv6_or_ipv4
                --connectSocket
              --connect2
            --socket2Connect
            socketOptions:
              SO_SNDBUF: 249856
              SO_RCVBUF: 249856
              TCP_NODELAY: 0
              SO_KEEPALIVE: 1
            --socketOptions
            HTTP connection succeeded.
          --openHttpConnection
          buildQuickRequest:
            genStartLine:
              Adding params to the start line...
              startLine: GET /search?q=sabah&format=xml&limit=20 HTTP/1.1
            --genStartLine
            getMimeHeaderHttp:
              headerField: Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
              headerField: Connection: keep-alive
              headerField: User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0
              headerField: Accept-Language: en-us,en;q=0.5
            --getMimeHeaderHttp
            addCookies:
              Not auto-adding cookies.
              sendCookies: 1
              cookieDir: 
            --addCookies
          --buildQuickRequest
          quickRequestHeader:
            requestHeader: GET /search?q=sabah&format=xml&limit=20 HTTP/1.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip
Host: nominatim.openstreetmap.org
          --quickRequestHeader
          sendRequestHeader:
            sendHeaderElapsedMs: 0
          --sendRequestHeader
          readResponseHeader(161ms):
            responseHeader: HTTP/1.1 200 OK
Date: Fri, 07 Oct 2016 23:06:46 GMT
Server: Apache/2.4.18 (Ubuntu)
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: OPTIONS,GET
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 1544
Connection: close
Content-Type: text/xml; charset=UTF-8

      --readResponseHeader
      statusCode: 200
      statusText: OK
      readResponseBody:
        bDiscard: 0
        contentLength: 1544
        numBytesToReceive: 1544
      --readResponseBody
      checkCloseConnection:
        Response includes connection:close header (or proxy-connection:close header)
        cleanCloseHttpConnection:
          terminateConnection:
            TCP connection cleanly closed by peer.
            Cleanly terminated TCP connection.
          --terminateConnection
        --cleanCloseHttpConnection
      --checkCloseConnection
    --quickHttpRequest
    checkUngzipResponse:
      decompressing GZIP response...
    --checkUngzipResponse
  --a_quickReq
  convertResponseBodyToUtf8:
    responseBodySize: 4458
    Logging up to 2048 bytes of the response in quoted-printable format:
    responseQP: [<?xml version=3D"1.0" encoding=3D"UTF-8" ?>=0A<searchresults timestamp=3D'Fri, 07 Oct 16 23:06:46 +0000' attribution=3D'Data =C2=A9 OpenStreetMap contributors, ODbL 1.0. http://www.openstreetmap.org/copyright' querystring=3D'sabah' polygon=3D'false' exclude_place_ids=3D'159718645,26212864,25973053,12738836,12751453,24999386,55659910,124182295,124182291,18302792,25739459,143459436' more_url=3D'http://nominatim.openstreetmap.org/search.php?format=3Dxml&amp;exclude_place_ids=3D159718645,26212864,25973053,12738836,12751453,24999386,55659910,124182295,124182291,18302792,25739459,143459436&amp;accept-language=3Den-us,en;q=3D0.5&amp;q=3Dsabah'>=0A<place place_id=3D'159718645' osm_type=3D'relation' osm_id=3D'3879783' place_rank=3D'8' boundingbox=3D"4.0969619,7.5111989,115.32751,119.4390876" lat=3D'5.595237' lon=3D'117.0051734' display_name=3D'Sabah, Malaysia' class=3D'boundary' type=3D'administrative' importance=3D'0.699443639274' icon=3D'http://nominatim.openstreetmap.org/images/mapicons/poi_boundary_administrative.p.20.png'/><place place_id=3D'26212864' osm_type=3D'node' osm_id=3D'2489253500' place_rank=3D'19' boundingbox=3D"35.289185,35.329185,43.348372,43.388372" lat=3D'35.309185' lon=3D'43.368372' display_name=3D'Sabah, Saladin, Iraq' class=3D'place' type=3D'village' importance=3D'0.375' icon=3D'http://nominatim.openstreetmap.org/images/mapicons/poi_place_village.p.20.png'/><place place_id=3D'25973053' osm_type=3D'node' osm_id=3D'2487904956' place_rank=3D'19' boundingbox=3D"30.949167,30.989167,47.121389,47.161389" lat=3D'30.969167' lon=3D'47.141389' display_name=3D'Sabah, Basra, Iraq' class=3D'place' type=3D'village' importance=3D'0.375' icon=3D'http://nominatim.openstreetmap.org/images/mapicons/poi_place_village.p.20.png'/><place place_id=3D'12738836' osm_type=3D'node' osm_id=3D'1223194777' place_rank=3D'19' boundingbox=3D"14.053781,14.093781,45.4263958,45.4663958" lat=3D'14.073781' lon=3D'45.4463958' display_name=3D'Sabah, Al Bayda&#039; Governorate, Yemen' class=3D'place' type=3D'village' importance=3D'0.375' ic=

on=3D'http://nominatim.openstreetmap.org/images/mapicons/poi_place_village.p.20.png'/><place place_id="3D'12751453'" osm_type="3D'node'" os]="" responsecontenttype:="" text="" xml;="" charset="UTF-8" responsehdrcharset:="" utf-8="" --convertresponsebodytoutf8="" --httprequeststr="" success.="" --quickgetstr="" --chilkatlog="" <="" pre="">

link

answered Oct 07 at 19:12

chilkat's gravatar image

chilkat ♦♦
11.8k316358421

edited Oct 07 at 19:13

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or __italic__
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×186
×8
×6
×3

Asked: Jul 04 at 21:02

Seen: 356 times

Last updated: Oct 07 at 19:13

powered by OSQA