Reputation: 3109
Error: write EPROTO 34557064:error:100000f7:SSL routines:OPENSSL_internal:WRONG_VERSION_NUMBER:../../third_party/boringssl/src/ssl/tls_record.cc:242:
The issue was that I was trying to POST to https when that API actually only supports HTTP. Just leave this as a note for other folks who might run into the same issue.
Any Help can be appreciated
Upvotes: 308
Views: 395816
Reputation: 49
I know it might be late, but I hope my answer helps someone.
Check if you are using https
instead of http
?
In my case replacing http with https helped solving the error!
Upvotes: 2
Reputation: 57
Most of the answers here are related to front end side or how to access it with http, but I came here looking for answer from backend perspective. I was getting same error when I ran gunicorn and nginx using docker container. Then i tried to access my api using https://my-domain-name.com
My nginx file had following configurations
listen 443;
..
but instead it it should have been the following
listen 443 ssl;
..
adding 'ssl' in front of 443 solved the problem for me, as 80 port is blocked on my server so I couldn't see anything in postman when I tried without https.
Upvotes: 1
Reputation: 37339
Turn off the "SSL certificate verification" in the settings and check the "Proxy" is correct also. This is aside from validating that the API accepts an HTTPS.
Usually when you turn off the SSL settings, it should work with both HTTPS/HTTP protocols, as it does not verify the "S" (SSL) part.
Upvotes: 2
Reputation: 4130
I got this exact error message because I had configured certificates for SSL incompletely in Postman. When specifying URL and port for my certificates, the port input field had a placeholder value of 443, which was the correct one. So I skipped actually typing it.
Turns out I actually had to type it, for it to work.
Upvotes: 3
Reputation: 193
error-write-eproto-34557064error100000f7ssl-routinesopenssl-internalwrong
https://localhost:5000/users
replace HTTPS to HTTP
Upvotes: 11
Reputation: 19
I also get the same error while I was accessing the rest API through postman.
Https//:localhost:8662/hello
Instead of using HTTPS, We can use HTTP//:localhost:8662/hello
Now it'll work.
HTTPS-It is an advanced version of HTTP. This comes under SSL protocol which means Security .https encrypt the data so we can use HTTPS when we pass sensitive information like credit card transaction because it encrypts the data.
Upvotes: -4
Reputation: 41
In my case, the request was a redirection 302
, in that case, I disable Automatically follow redirects
on Postman settings
Settings
Upvotes: 3
Reputation: 29
For anyone who is still struggling I had another solution to remove the trailing "/" from my route for example:
@app.get("/api/book/{id}/info/")
Changed to:
@app.get("/api/book/{id}/info")
Upvotes: 2
Reputation: 2421
I had this issue in Postman when I tried to hit a before working API endpoint.
In my case, it was a Header that I had set manually before and forgotten to delete.
Header: Host
It has normally the value <calculated when request is sent>
but I had it given a custom value.
Upvotes: 7
Reputation: 43
I encountered this error while trying to test the api request on postman. Ensure the the url link specified during the development process is the same url link been used during testing of postman.
example: during development, the url link specified is http://_. Then, during testing on postman make sure that the link is the same http://.
API requests from Http:// and Https:// are treated and handled differently.
Upvotes: 1
Reputation: 446
This error comes when the API that we are hitting is running on http and we are trying using https. Information was really useful.
Example: Using this https://localhost:8092/customers, when this http://localhost:8092/customers, must be used as API is running on http.
Upvotes: 22
Reputation: 4614
This type of issue comes when you use https instead of http. Change the URL to use http.
Example: https://localhost:3000/posts
Change it to: http://localhost:3000/posts
Upvotes: 441