# 发起请求

#### **基本查询**

基本查询仅需传入 `用户名` 和 `密码`。不需要其他参数。这样的查询将导致请求从随机 IP 地址（代理）发出。每次新请求都会使用不同的代理。

#### 代码示例

在此示例中，对 `ip.oxylabs.io/location` 是从随机 IP 执行的：

{% tabs %}
{% tab title="cURL" %}

```shell
curl -x pr.oxylabs.io:7777 -U "customer-USERNAME:PASSWORD" https://ip.oxylabs.io/location
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
$username = 'USERNAME';
$password = 'PASSWORD';
$proxy = 'pr.oxylabs.io:7777';
$query = curl_init('https://ip.oxylabs.io/location');
curl_setopt($query, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($query, CURLOPT_PROXY, "http://$proxy");
curl_setopt($query, CURLOPT_PROXYUSERPWD, "customer-$username:$password");
$output = curl_exec($query);
curl_close($query);
if ($output)
    echo $output;
?>
```

{% endtab %}

{% tab title="Python" %}

```python
import urllib.request
import random
username = 'USERNAME'
password = 'PASSWORD'
entry = ('http://customer-%s:%s@pr.oxylabs.io:7777' %
    (username, password))
query = urllib.request.ProxyHandler({
    'http': entry,
    'https': entry,
})
execute = urllib.request.build_opener(query)
print(execute.open('https://ip.oxylabs.io/location').read())
```

{% endtab %}

{% tab title="Java" %}

```java
package example;

import org.apache.http.HttpHost;
import org.apache.http.client.fluent.*;

public class Example {
    public static void main(String[] args) throws Exception {
        HttpHost entry = new HttpHost("pr.oxylabs.io", 7777);
        String query = Executor.newInstance()
            .auth(entry, "customer-USERNAME", "PASS")
            .execute(Request.Get("http://ip.oxylabs.io/location").viaProxy(entry))
            .returnContent().asString();
        System.out.println(query);
    }
}
```

{% endtab %}

{% tab title="C#" %}

```csharp
using System;
using System.Net;

class Example
{
    static void Main()
    {
        var client = new WebClient();
        client.Proxy = new WebProxy("pr.oxylabs.io:7777");
        client.Proxy.Credentials = new NetworkCredential("customer-USERNAME", "PASSWORD");
        Console.WriteLine(client.DownloadString("https://ip.oxylabs.io/location"));
    }
c
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'

uri = URI.parse('https://ip.oxylabs.io/location')
proxy = Net::HTTP::Proxy('pr.oxylabs.io', 7777, 'customer-USERNAME', 'PASSWORD')

req = Net::HTTP::Get.new(uri.path)

result = proxy.start(uri.host,uri.port) do |http|
    http.request(req)
end

puts result.body
```

{% endtab %}
{% endtabs %}

单个回连代理（`pr.oxylabs.io:7777）`允许您通过用户名中的附加参数选择特定国家或城市的代理。此方法还支持会话控制。以下是凭证示例：

`customer-USERNAME-cc-US-city-CITY-sessid-abcde12345:PASSWORD`

`customer-USERNAME-cc-US-city-CITY-sessid-abcde12345-sesstime-5:PASSWORD`

下面是该结构的拆解：

<figure><img src="https://2655358775-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzrXw45naRpCZ0Ku9AjY1%2Fuploads%2Fgx5I5EdHkpeNvY70RR2Q%2FIMG_9551.png?alt=media&#x26;token=0b815fb3-65d3-4e93-89c6-3859695df41f" alt=""><figcaption></figcaption></figure>

#### 查询参数

| 参数                                                          | 说明                                                                                                                                                                                                                                                                                                               |
| ----------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <mark style="background-color:green;">**`customer`**</mark> | 用户名                                                                                                                                                                                                                                                                                                              |
| `cc`                                                        | 不区分大小写的国家代码（2 个字母）， [**3166-1 alpha-2 格式**](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)。例如， `DE` 代表德国， `GB` 代表英国， `TH` 代表泰国。有关如何使用特定国家代理的更多详情请见 [**此处**](https://developers.oxylabs.io/documentation/cn/dai-li/residential-proxies/broken-reference).                                                      |
| `city`                                                      | 不区分大小写的英文城市名。此参数必须搭配 `cc` 使用以获得更高准确性，例如： `cc-GB-city-london` 代表英国伦敦； `cc-DE-city-berlin` 代表德国柏林。对于包含两个以上单词的城市名，请将空格替换为 `_`，例如： `city-st_petersburg` 或 `city-rio_de_janeiro`。点击 [**此处**](https://developers.oxylabs.io/documentation/cn/dai-li/residential-proxies/location-settings/select-city) 了解有关城市级定向的更多信息。 |
| `st`                                                        | 不区分大小写的美国州名称，前缀为 us\_，例如： `us_california`, `us_illinois`. [**点此** ](https://developers.oxylabs.io/documentation/cn/dai-li/residential-proxies/location-settings/select-state)了解有关州级定向的更多信息。                                                                                                                      |
| `sessid`                                                    | 会话 ID，用于在后续请求中保持相同 IP。会话在 10 分钟后过期。之后会为该会话 ID 分配新的 IP 地址。支持随机字符串、0-9 和 A-Z 字符。                                                                                                                                                                                                                                   |
| `sesstime`                                                  | 会话时长参数，用于在一定时间内保持相同 IP。最大会话时长为 30 分钟。                                                                                                                                                                                                                                                                            |
| <mark style="background-color:green;">**`密码`**</mark>       | 密码                                                                                                                                                                                                                                                                                                               |

&#x20;   \- 必填参数
