HTTP Protocol

The Hypertext Transfer Protocol (HTTP) is an application protocol for distributed, collaborative, hypermedia information systems. Hypertext is structured text that uses logical links (hyperlinks) between nodes containing text. HTTP is the protocol to exchange or transfer hypertext. HTTP functions as a request-response protocol in the client-server computing model. HTTP is designed to permit intermediate network elements to improve or enable communications between clients and servers. HTTP is an application layer protocol designed within the framework of the Internet Protocol Suite; it presumes an underlying and reliable transport layer protocol.

Share tech news, updates, or what's on your mind.

Sign up to Post

Entering successfully redirects to and you can see the green padlock on the browser bar.

Similarly entering also does the same.

However entering and get certificate errors.

Is it actually possible to get an https URL to redirect to a different website with its own certificate?

One issue is that if someone googles "Felixstowe Rotary Club" one of the search results (for me it is the second one in the list) is so potentially someone might use this link.
PMI ACP® Project Management
LVL 13
PMI ACP® Project Management

Prepare for the PMI Agile Certified Practitioner (PMI-ACP)® exam, which formally recognizes your knowledge of agile principles and your skill with agile techniques.

I am trying to navigate to a website via PowerShell and pass custom header information with the following:
$ie = new-object -comobject 'internetexplorer.Application'
$ie.Visible = $True
$headers =  @{"x-custom-1"="custom Value 1"}
$headers += @{"x-custom-2"="custom Value 2"}

Open in new window

However, the headers don't seem to be making  it to the site.
Any assistance is greatly appreciated.
Hi Experts,

Any idea how I link a Javascript file to my Caspio datapage?

This is what was told by Caspio IT guys...

We don’t need to deploy the javascript files to our local PC. It will work as it is upon duplication. In terms of linking a datapage to a javascript file, just update the javascript file where we change the APP key of the datapage to be integrated to the said file.

then had someone else there (not a developer) mentioning the following...

As far as I know JS file cannot be place on a local computer and then reference by an application. If you want to refer to your JS file in Caspio DataPages, you can create a URL app parameter and use this syntax on your DataPages to refer to it:

<script src="[@app:AppParameterName/]"></script>

In this forum article you can find how to do that:

So perhaps you guys can guide me...

There seems to be some sort of mysterious redirection going on when i try to access the site at

A static file, such as comes out fine but the attempt to access the homepage seems to land on a page of the company that hosts I really can't see why. Is it Wordpress doing this or what (after all it does say X-Redirect-By: WordPress)? I've attached a wget debug log of the attempt to get the homepage
Hi, I have a cpprestsdk test program which calls a PHP back-end on my localhost passing GET data and this works fine.  But I want to pass the data via POST rather than GET and though I have Googled intensely I cannot get any of the suggestions to work in my environment which is Win 10 and VS2019.
I've attached the GET code which works.
If you can advise me how to achieve the similar functionality but sending the data to the backend via POST I would be most appreciative and thank you in anticipation.part 1 of the codepart 2 of the code
I have 2 servers with:
1. API - linux apache
2. C# Console app (calls the API and returns the result)
They are both on our servers in our control

Even though this question is focused on C# console APP, there might be some other limitation i'm not considering, so have tagged this question in multiple topics

My goal is to call API 500 times a sec from one machine, currently its not even close, and I think its due to lack of concurrent connections to API.

When hitting API from console app, we are seeing in the region of these figures for response time on API result
 - 350ms when on WAN,
-  150ms on LAN

Not using console app -  from API server directly
-  56ms (using terminal session and running script to call the http API directly)

These are the detailed stats when hitting the API directly from itself (56ms option above)
From the Apache test:

Concurrency Level:      100
[b]*Time taken for tests:   24.612 seconds*[/b]
Complete requests:      *50,000*
Failed requests:        0
Non-2xx responses:      50000
Keep-Alive requests:    0
Total transferred:      33050000 bytes
HTML transferred:       18450000 bytes
Requests per second:    2031.56 [#/sec] (mean)
[b]*Time per request:       49.223 [ms] (mean)*[/b]
[b]*Time per request:       0.492 [ms] (mean, across all concurrent requests)*[/b]

Open in new window

So according to these results it can handle a very acceptable amount,  using concurrent connections, albeit internally - (2,031 per second, which is…
I currently have a HttpWebRequest wcustom header written in defined as:

Dim request As HttpWebRequest = CType(WebRequest.Create(url), HttpWebRequest)
            request.Method = "POST"
            request.Headers.Add("X-SessionID", sessionID)
            request.ContentType = "application/json; charset=utf-8"

Open in new window

I need to add in the content as below created using PHP/JS.

$options = array(
  'http' =>
  array (
    'method'        => 'POST',
    'header'        => 'X-SessionID: ' . $MY_SESSION_ID . "\r\n" .
                       'Content-Type: application/json',
    'content'       => json_encode($mylist1),
    'ignore_errors'  => true,

Open in new window

How do I do this?
When I connect to Tableau server via HTTP address - which use to work fine - I now get HTTP404 blank page.
Any ideas as have a demo tomorrow!

HTTPAPI_debug.txtWS HTTP API(library LIBHTTP).
IBM-i Client Connection to Webserver: handshake problem.  
Immediatelly after clientHello, the  server resets  connection.

ibm-i Joblog messages .
   Message . . . . :   (GSKit) An operation which is not valid for the current
     SSL session state was attempted.                                          
   Cause . . . . . :   No additional online help information is available.    
 40   18/01/19  15:36:49.874491  HTTPAPIR4    LIBHTTP     *STMT    RSUCISLO2  
   From module . . . . . . . . :   HTTPUTILR4                                  
   From procedure  . . . . . . :   HTTP_CRASH                                  Handshakke-problem-from-7_3-LPAR.docx
   Statement . . . . . . . . . :   4068                                        
   Message . . . . :   SSL Handshake: (GSKit) I/O: A connection with a remote  
     socket was reset by that

I'm trying to use code that I don't understand to gather statistics about myself from experts-exchange. The code begins with the following. Note the cryptic comment at line 12. In any case when I run the code and enter in the input box I get an "A security error occurred" error at line 26. What am I doing wrong?
Private Sub HTML_VBA_Excel()
    Dim oXMLHTTP As Object
    Dim sPageHTML  As String
    Dim sURL As String
    Dim intName As Integer
    Dim intEnd As Integer
    Dim strParts() As String
    Dim strStartString As String
    Dim intNewLine As Integer
    Dim lngLastRow As Long
    Dim lngRow As Long
 '  doesn't work correctly
    Application.ScreenUpdating = False
    strStartString = "target=" & """" & "_blank" & """" & ">"
    sURL = "Start"
    Do While sURL <> ""
        sURL = InputBox("Enter search result URL")
       'Extract data from website to Excel using VBA
       Set oXMLHTTP = CreateObject("MSXML2.ServerXMLHTTP")
'       oXMLHTTP.Open "GET", sURL, False
       oXMLHTTP.Open "GET", sURL, False

       sPageHTML = oXMLHTTP.responseText

Open in new window

OWASP Proactive Controls
LVL 13
OWASP Proactive Controls

Learn the most important control and control categories that every architect and developer should include in their projects.

I am getting the following error on making a postman request -
How can i increase the timing or can resolve this some other way.
The corresponding application is running with debugger with this option -

I searched Experts and found a comment linking to documentation to set up URL rewrite:

Regarding the comment:

I'm trying to set a URL rewrite from http to https in IIS 8.5 using the steps outlined in the following article mentioned in the comment above.

My settings are exactly the same, but it's not re-directing to the https, but just times out. Any ideas would be appreciated.

Hi All

I'm using a Windows Server 2012 R2 Standard with IIS Version 8.5.9600. I'm trying to redirect link A to link B, see below

Link A

Open in new window

Link B

Open in new window

I created a web.config file under the folder, the web.config consists of the below

<?xml version="1.0" encoding="UTF-8"?>
<httpRedirect destination=""/>

Open in new window

When I try to access the I get the
500 - Internal server error.

500 - Internal server error.
There is a problem with the resource you are looking for, and it cannot be displayed.

Open in new window

Any help is greatly appreciated!
Hi all,
I am trying to create a login form in Angular 6. My test app check the data written from the current user and try to match with the data received from a remote service via http (post). This is the point: with a simple request as following, all works correctly. But what about a request also with header and token? How can I create a function with this information? Or, do you have a link with a specific tutorial for this case? Thank you very much!

PS: I almost never insert "urgent" for a request but this is really urgent!

    onlogin(): void {
    .subscribe(data => { = data;
        this.loading = false});

Open in new window

(example from official Angular 6 Book, page 157)
What are the steps required to change an IIS hosted website from HTTP to HTTPS?
How do I get the actual TOTAL byte size of the HTTP header being sent to a server? Is there any way in Chrome to see the size of the complete request?
I have a service which calls a web service returning text data. Basically service is trying to return a file content which is mostly text.

here is my service call

getFile(title: string, identifier: string) {
    console.log('returning service');
    return this.http
      .get(this.constructFileURL(title, identifier), { headers: this.createHeader() });

Open in new window

Here is how I am subscribing to it

 getFileContent(title: string, display: DisplayContent, identifier: string) {
    console.log('calling service');
    this.fileService.getFile(title, identifier).subscribe(results => {
      console.log('displaying results');
      display.content = JSON.stringify(results);
    return this.fileData;

Open in new window

I am getting following error on the console. Note : 'console.log('displaying results')' is not getting printed on the console

HttpErrorResponse {headers: HttpHeaders, status: 200, statusText: "OK",
SyntaxError: Unexpected token e in JSON at position 1 at JSON.parse (<anonymous>) at XMLHttpRequest.onLoad (http://localhost:4200/vendor.js:7822:51) at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (http://localhost:4200/polyfills.js:14960:31) at Object.onInvokeTask (http://localhost:4200/vendor.js:36079:33) at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (http://localhost:4200/polyfills.js:14959:36) at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (http://localhost:4200/polyfills.js:14727:47) at ZoneTask.push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask [as invoke] (http://localhost:4200/polyfills.js:15035:34) at invokeTask (http://localhost:4200/polyfills.js:16079:14) at XMLHttpRequest.globalZoneAwareCallback (http://localhost:4200/polyfills.js:16105:17)

Open in new window

Not able to figure out what is wrong. I do convert JSON to string just to be safe as show in the code
I have had a few people tell me that when trying to visit a site using safari on their iPhones, they get an error that says:

Safari cannot open the page because the server cannot be found.

I asked other people to test on their iPhones and they said it works fine. After asking Google about this it seems that the answer is always something to do with the phone itself. But, it is not realistic to ask everyone with an iPhone to check this setting, and check that setting in order to try use the website.

Does anyone have any suggestions regarding this?
Because I am taking over for an ex-employee, I am tasked with finding out why a visitor who's logged in session times out 24 hours after inactivity can still see certain things that they should only be able to see when logged in, like special pricing. It was originally designed this way, because the boss wanted government customers who have logged in at some point to always be able to see their government pricing, whether they were currently logged in or not. Now, that decision has been reversed, and we only want them to see their government pricing if their current logged in session is valid.

we use Symfony2 on Unix / Apache if that matters

I have no idea if it's a cookie, a session, or whatever else

I know we utilize both but I don't know if the answer lies in either place
OWASP: Threats Fundamentals
LVL 13
OWASP: Threats Fundamentals

Learn the top ten threats that are present in modern web-application development and how to protect your business from them.

HttpURLConnection getInputStream throws below errors sometimes -

java.lang.RuntimeException: Server returned HTTP response code: 500

Open in new window

Here is the part of callstack -

09:05:02,198 ERROR [stderr] (http-/111.222.333.444:11800) Server returned HTTP response code: 500 for URL: https://111.222.333.444:11800/xyz/myapp/3.0/urn:name:ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJ
09:05:02,198 ERROR [stderr] (http-/111.222.333.444:11800)   at
09:05:02,199 ERROR [stderr] (http-/111.222.333.444:11800)   at

Open in new window

This is a how my code looks like. This is not a client code. This runs on server like Tomcat -

private void getResult(HttpURLConnection urlconnection,
            String result) {
        BufferedReader bufferedReader;
        String line;
        try {

            bufferedReader = new BufferedReader(new InputStreamReader(

            while ((line = bufferedReader.readLine()) != null) {
                result += line;

        } catch (Exception ex) {
            String error = String.format("Invalid InputStream, %s",



Open in new window

The URL that I have prepared looks like below -


Open in new window

Can this be java problem or server is responsible for this? What could be the problem?
Hi Experts,

I'm looking to modify the below to be an update instead of a select.
however not sure where do I put in the body param as specified below

Function GetDataFromCASPIO1()
    Dim objHTTP As New WinHttp.WinHttpRequest
    Dim docXML As MSXML2.DOMDocument
    Dim ResponseText As String
    Dim curNode As IXMLDOMNode
    Dim oNodeList As IXMLDOMSelection
    Dim s As String

    Set docXML = New MSXML2.DOMDocument

    Set objHTTP = New WinHttp.WinHttpRequest
    URL = ""
    objHTTP.Open "POST", URL, False
    objHTTP.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"

    ResponseText = Right(objHTTP.ResponseText, Len(objHTTP.ResponseText) - 17)
    access_token = Left(ResponseText, InStr(ResponseText, """") - 1)
    'Debug.Print access_token

    Set objHTTP = New WinHttp.WinHttpRequest

    URL = "{""limit"":10000,""where"":""visit_date>=GetDate()-7""}"

    '''objHTTP.Open "GET", URL, False
    objHTTP.Open "Put", URL, False
    objHTTP.SetRequestHeader "Accept", "application/xml"
    objHTTP.SetRequestHeader "Content-Type", "application/json"
    objHTTP.SetRequestHeader "Authorization", "Bearer " + access_token

    'Debug.Print objHTTP.Status
    'Debug.Print objHTTP.ResponseText

Open in new window


Found these meta tags to ensure a page always reloads.

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="0">

Open in new window

Seen some pages where, despite having them, the cache still is used.

What can you recommend to add to these to be sure that the page arrives fresh each time?


How do I send a http request to a webserver using post without a web browser.

IE this will come from a script, what does the script look like?

I am trying to connect to a secure VAN and push and pull files over a secure connection.  As we are trying to set it up, the people at the VAN are getting this error.

Error Message:

AS2 Outbound has a HTTP proxy server to connect through.Probably error while connecting to proxy : [Error sending document over http to host [http://X.X.213.93], status code [405], reason [Method Not Allowed], response from server [<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "">< html xmlns="">< head>< meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>< title>405 - HTTP verb used to access this page is not allowed.</title>< style type="text/css">< !-- body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;} fieldset{padding:0 15px 10px 15px;} h1{font-size:2.4em...]]


Sending of document [167499846.edi] to [http://X.X.213.93] FAILED

Any ideas of what I am missing or doing wrong?  The X.X.213.93 is the public IP of my machine receiving the files.

Need to write a script which:
1. Download the json file (curl request)
2. Rename the file to  YYYYMMDDHHMM_lng.xml
3. Push it to a shared folder (for example //

HTTP Protocol

The Hypertext Transfer Protocol (HTTP) is an application protocol for distributed, collaborative, hypermedia information systems. Hypertext is structured text that uses logical links (hyperlinks) between nodes containing text. HTTP is the protocol to exchange or transfer hypertext. HTTP functions as a request-response protocol in the client-server computing model. HTTP is designed to permit intermediate network elements to improve or enable communications between clients and servers. HTTP is an application layer protocol designed within the framework of the Internet Protocol Suite; it presumes an underlying and reliable transport layer protocol.

Top Experts In
HTTP Protocol