Method: urls.search

알려진 위협과 일치하는 URL을 검색합니다. 각 URL과 호스트 서픽스 및 경로 프리픽스 표현식 (제한된 깊이까지)이 확인됩니다. 즉, 응답에 요청에 포함되지 않았지만 요청된 URL을 표현하는 URL이 포함될 수 있습니다.

HTTP 요청

GET https://safebrowsing.googleapis.com/v5alpha1/urls:search

URL은 gRPC 트랜스코딩 구문을 사용합니다.

쿼리 매개변수

매개변수
urls[]

string

필수 항목입니다. 조회할 URL입니다. 클라이언트는 50개가 넘는 URL을 전송하면 안 됩니다(MUST NOT).

요청 본문

요청 본문은 비어 있어야 합니다.

응답 본문

지정된 URL과 일치하는 위협을 검색한 후 반환된 응답입니다.

아무것도 찾지 못하면 서버는 NOT_FOUND 상태 (HTTP 상태 코드 404)를 반환하는 대신 threats 필드가 비어 있는 OK 상태 (HTTP 상태 코드 200)를 반환합니다.

성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.

JSON 표현
{
  "threats": [
    {
      object (ThreatUrl)
    }
  ],
  "cacheDuration": string
}
필드
threats[]

object (ThreatUrl)

순서가 지정되지 않은 목록 발견된 위협 일치의 순서가 지정되지 않은 목록입니다. 각 항목에는 URL과 해당 URL과 일치하는 것으로 확인된 위협 유형이 포함됩니다. URL의 모든 표현식이 고려되었으므로 목록 크기는 요청의 URL 수보다 클 수 있습니다.

cacheDuration

string (Duration format)

클라이언트 측 캐시 지속 시간입니다. 클라이언트는 이 기간을 현재 시간에 더하여 만료 시간을 결정해야 합니다(MUST). 그러면 응답에 반환되는 URL 수와 관계없이 요청에서 클라이언트가 쿼리한 모든 URL에 만료 시간이 적용됩니다. 서버가 특정 URL에 대해 일치하는 항목을 반환하지 않더라도 이 사실은 클라이언트에서 캐시해야 합니다(MUST).

threats 필드가 비어 있는 경우에만 클라이언트는 cacheDuration를 늘려 서버에서 지정한 것보다 늦은 새 만료일을 결정할 수 있습니다(MAY). 어떤 경우든 캐시 기간은 24시간을 초과해서는 안 됩니다.

중요: 클라이언트는 서버가 모든 응답에 동일한 캐시 기간을 반환한다고 가정해서는 안 됩니다(MUST NOT). 서버는 상황에 따라 응답별로 다른 캐시 기간을 선택할 수 있습니다(MAY).

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

ThreatUrl

하나 이상의 위협과 일치하는 URL입니다.

JSON 표현
{
  "url": string,
  "threatTypes": [
    enum (ThreatType)
  ]
}
필드
url

string

하나 이상의 위협에 의해 일치된 요청된 URL입니다.

threatTypes[]

enum (ThreatType)

순서가 지정되지 않은 목록 URL이 분류된 위협의 순서가 지정되지 않은 목록입니다.