⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 curlmodule.java

📁 RESIN 3.2 最新源码
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
        curl.setIsFollowingRedirects(value.toBoolean());        break;      case CURLOPT_FRESH_CONNECT:        // caching handled by Java        break;      case CURLOPT_HEADER:        curl.setIsReturningHeader(value.toBoolean());        break;      case CURLOPT_HTTPGET:        curl.setRequestMethod("GET");        break;      case CURLOPT_HTTPPROXYTUNNEL:        curl.setIsProxying(value.toBoolean());        break;      case CURLOPT_MUTE:        curl.setIsVerbose(! value.toBoolean());        break;      case CURLOPT_NETRC:        //username:password file        //XXX        break;      case CURLOPT_NOBODY:        curl.setIsReturningBody(false);        break;      case CURLOPT_NOPROGRESS:        //XXX        break;      case CURLOPT_POST:        curl.setRequestMethod("POST");        break;      case CURLOPT_PUT:        curl.setRequestMethod("PUT");        break;      case CURLOPT_RETURNTRANSFER:        curl.setIsReturningData(value.toBoolean());        break;      case CURLOPT_UNRESTRICTED_AUTH:        //XXX        break;      case CURLOPT_SSL_VERIFYPEER:        curl.setIsVerifySSLPeer(value.toBoolean());        break;      case CURLOPT_UPLOAD:        if (value.toBoolean())          curl.setRequestMethod("PUT");        break;      case CURLOPT_VERBOSE:        curl.setIsVerbose(value.toBoolean());        break;      //      // ints      //      case CURLOPT_BUFFERSIZE:        //XXX        break;      case CURLOPT_CONNECTTIMEOUT:        curl.setConnectTimeout(value.toInt() * 1000);        break;      case CURLOPT_HTTP_VERSION:        if (value.toInt() == CURL_HTTP_VERSION_1_0) {          env.stub("cURL HTTP/1.0 not specifically supported");        }        break;      case CURLOPT_HTTPAUTH:        // get authentication method from server instead/*        int method = value.toInt();        if ((method & CURLAUTH_BASIC) == CURLAUTH_BASIC)          curl.setAuthenticationMethod(CURLAUTH_BASIC);        else if ((method & CURLAUTH_DIGEST) == CURLAUTH_DIGEST)          curl.setAuthenticationMethod(CURLAUTH_DIGEST);        else          env.stub("cURL Http authentication method not supported");*/        break;      case CURLOPT_INFILESIZE:        curl.setUploadFileSize(value.toInt());        break;      case CURLOPT_LOW_SPEED_LIMIT:        //XXX        break;      case CURLOPT_LOW_SPEED_TIME:        //XXX        break;      case CURLOPT_MAXCONNECTS:        //XXX        break;      case CURLOPT_PORT:        curl.setPort(value.toInt());        break;      case CURLOPT_PROXYAUTH:        //XXX        break;      case CURLOPT_PROXYPORT:        curl.setProxyPort(value.toInt());        break;      case CURLOPT_PROXYTYPE:        switch (value.toInt()) {          case CURLPROXY_HTTP:            curl.setProxyType("HTTP");            break;          case CURLPROXY_SOCKS5:            curl.setProxyType("SOCKS");            break;          default:            env.warning(L.l("unknown curl proxy type"));        }        break;      case CURLOPT_SSL_VERIFYHOST:        i = value.toInt();        switch (i) {          case 0:            curl.setIsVerifySSLCommonName(false);            curl.setIsVerifySSLHostname(false);            break;          case 1:            curl.setIsVerifySSLCommonName(true);            curl.setIsVerifySSLHostname(false);            break;          case 2:            curl.setIsVerifySSLCommonName(true);            curl.setIsVerifySSLHostname(true);            break;          default:            env.warning(L.l("unknown ssl verify host option '{0}", i));        }        break;      case CURLOPT_TIMECONDITION:        switch (value.toInt()) {          case CURL_TIMECOND_IFMODSINCE:            curl.setIfModifiedSince(true);            break;          case CURL_TIMECOND_IFUNMODSINCE:            curl.setIfModifiedSince(false);            break;          default:            env.warning(L.l("invalid CURLOPT_TIMECONDITION option"));        }        break;      case CURLOPT_TIMEOUT:        curl.setReadTimeout(value.toInt() * 1000);        break;      case CURLOPT_TIMEVALUE:        long time = value.toLong() * 1000L;        String format = "%a, %d %b %Y %H:%M:%S %Z";                String date = QDate.formatGMT(time, format);        curl.setModifiedTime(date);        break;      //      // strings      //      case CURLOPT_COOKIE:        curl.setCookie(value.toString());        break;      case CURLOPT_COOKIEFILE:        // XXX: Netscape cookie format support        ReadStream in = null;        try {          Path path = env.getPwd().lookup(value.toString());          if (path.exists()) {            in = path.openRead();            StringBuilder sb = new StringBuilder();            int ch;            while ((ch = in.read()) >= 0) {              sb.append((char)ch);            }            curl.setCookie(sb.toString());          }        }        catch (IOException e) {          throw new QuercusModuleException(e);        }        finally {          if (in != null)            in.close();        }        break;      case CURLOPT_COOKIEJAR:        //XXX: Netscape cookie file format        curl.setCookieFilename(value.toString());        break;      case CURLOPT_CUSTOMREQUEST:        curl.setRequestMethod(value.toString());        break;      case CURLOPT_ENCODING:        String encoding = value.toString();        if (encoding.length() == 0)          encoding = "gzip, deflate, identity";        curl.setRequestProperty("Accept-Encoding", encoding);        break;      case CURLOPT_POSTFIELDS:        curl.setRequestMethod("POST");        curl.setPostBody(value.toBinaryValue(env));        break;      case CURLOPT_PROXY:        curl.setIsProxying(true);        curl.setProxyURL(value.toString());        break;      case CURLOPT_PROXYUSERPWD:        String proxyUserPwd = value.toString();        i = proxyUserPwd.indexOf(':');        if (i >= 0)          curl.setProxyUsername(proxyUserPwd.substring(0, i));        curl.setProxyPassword(proxyUserPwd.substring(i + 1));        break;      case CURLOPT_RANGE:        curl.setRequestProperty("Range", "bytes=" + value.toString());        break;      case CURLOPT_REFERER:        curl.setRequestProperty("Referer", value.toString());        break;      case CURLOPT_URL:        setURL(curl, value.toString());        //curl.setURL(value.toString());        break;      case CURLOPT_USERAGENT:        curl.setRequestProperty("User-Agent", value.toString());        break;      case CURLOPT_USERPWD:        String userpwd = value.toString();        i = userpwd.indexOf(':');        if (i >= 0)          curl.setUsername(userpwd.substring(0, i));        curl.setPassword(userpwd.substring(i + 1));        break;      //      // arrays      //      case CURLOPT_HTTP200ALIASES:        //XXX: nonstandard HTTP replies like "FOO HTTP/1.1 OK"        break;      case CURLOPT_HTTPHEADER:        ArrayValue array = value.toArrayValue(env);        for (Map.Entry<Value,Value> entry: array.entrySet()) {          String header = entry.getValue().toString();                    String name = header;          String body = "";                    i = header.indexOf(':');                    if (i >= 0) {            name = header.substring(0, i).trim();            body = header.substring(i + 1).trim();          }          curl.setRequestProperty(name, body);        }        break;      //      // fopen stream resources      //      case CURLOPT_FILE:        Object outputFile = value.toJavaObject();        if (outputFile instanceof BinaryOutput)          curl.setOutputFile((BinaryOutput)outputFile);        break;      case CURLOPT_INFILE:        Object uploadFile = value.toJavaObject();        if (uploadFile instanceof BinaryInput)          curl.setUploadFile((BinaryInput)uploadFile);        break;      case CURLOPT_STDERR:        //XXX        break;      case CURLOPT_WRITEHEADER:        Object outputHeaderFile = value.toJavaObject();        if (outputHeaderFile instanceof BinaryOutput)          curl.setOutputHeaderFile((BinaryOutput)outputHeaderFile);        break;      //      // callback functions      //      case CURLOPT_HEADERFUNCTION:        curl.setHeaderCallback(env.createCallback(value));        break;      case CURLOPT_PASSWDFUNCTION:        curl.setPasswordCallback(env.createCallback(value));        break;      case CURLOPT_READFUNCTION:        curl.setReadCallback(env.createCallback(value));        break;      case CURLOPT_WRITEFUNCTION:        curl.setWriteCallback(env.createCallback(value));        break;      default:        env.warning(L.l("CURL option unknown or unimplemented"));        log.log(Level.FINE, L.l("CURL option unknown orunimplemented"));        return false;    }    return true;  }  /**   * Returns the version of this cURL implementation.   *   * @param env   * @param version   */  public static ArrayValue curl_version(Env env,                              @Optional Value version)  {    throw new UnimplementedException("curl_version");  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -