看你发的包,没什么问题了……你用sniffer截一下用IE发的包,然后比较一下再看看吧

解决方案 »

  1.   

    http://www.kbcafe.com/articles/http.html
      

  2.   

    用GET或在IE里面用POST都能够显示type的值,但socket来POST就不行,为什么会这样,包格式有不对吗?
      

  3.   

    Agree 111222(www.mozilla.org)
    用于跟踪WinSock中通讯的DLL源代码:http://www.vckbase.com/code/findcode.asp?mclsid=&sclsid=&keyword=dll&page=2
    用他看看。
      

  4.   

    你找个截包软件看看win2k server有网络监视器win9x你可以用netxrayNT等等你可以用sniffer pro
      

  5.   

    to smae():
    请问你是如何在浏览器里使用get 和 post的?
      

  6.   

    ///////////////////////////////////////////////////////////////////////////
    //SDK post
    ///////////////////////////////////////////////////////////////////////////
    #include "stdafx.h"
    #include "winsock.h"
    #pragma comment(lib,"ws2_32.lib")
    #define winsock_version 0x0101
    void main()
    {
    //I create  C:\Inetpub\wwwroot\test\test.asp ,start the web service
    //start my program, the result is OK.
    //If it works,it is written by masterz,otherwise I don't know who write it.
        SOCKADDR_IN saServer;
    LPHOSTENT lphostent;
    WSADATA wsadata;
        SOCKET hsocket;
    int nRet;
    const char* host_name="127.0.0.1";
    char* req="POST /test/test.asp HTTP/1.0\r\n"
    "From: local\r\n"
    "User-Agent: post_test/1.0\r\n"
    "Content-Type: application/x-www-form-urlencoded\r\n"
    "Content-Length: 20\r\n\r\n"
    "type=12345&name=aaaa";
    if(WSAStartup(winsock_version,&wsadata))
    printf("can't initial socket");
        lphostent=gethostbyname(host_name);
        if(lphostent==NULL)
    printf("lphostent is null");
    hsocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
        saServer.sin_family = AF_INET;
    // Use def. now, need to handle general case
    saServer.sin_port = htons(80);
    saServer.sin_addr = *((LPIN_ADDR)*lphostent->h_addr_list);
        nRet = connect(hsocket, (LPSOCKADDR)&saServer, sizeof(SOCKADDR_IN));
    if (nRet == SOCKET_ERROR)
    {
    printf("can't connect");
    closesocket(hsocket);
    return;
    }
    else
    printf("connected with %s\n",host_name);
    nRet = send(hsocket, req, strlen(req), 0);
    if (nRet == SOCKET_ERROR)
    {
    printf("send() failed");
    closesocket(hsocket);

    }
    else
    printf("send() OK\n");
    char dest[1000];
    nRet=1;
    while(nRet>0)
    {
    nRet=recv(hsocket,(LPSTR)dest,sizeof(dest),0);
    if(nRet>0)
    dest[nRet]=0;
    else
    dest[0]=0;
    printf("\nReceived bytes:%d\n",nRet);
    printf("Result:\n%s",dest);
    }
    }
      

  7.   

    ahzhuo(阿卓) 
    做一个带form的网页在ie里测试即可