小单日志:修复PHP API接口插图

今天在群里接了个小单,要求是修复一个API接口,语言是PHP。刚好没事就接了。甲方的要求大概是:为了素材方便解析,自己写了一个接口,但是网站这边后端去访问这个接口时无法返回正确的值,要求修复一下。

我让他给了一个POST的示例和服务器的后台账号密码,登上去看了下要修改的文件,这里就不贴出来了。

POST示例

小单日志:修复PHP API接口插图1

Body:form-data ,参数:url

这里是POST请求,结果PHP代码里用的是GET请求,并且没有使用form-data,而是用的Query。重新给他封装一个函数,发送请求正常返回即可。

通用代码

public static function sendPost($url)
{
    $postUrl = "#";
    $postData = array(
        'url' => $url,
    );
    $curl = curl_init();

    curl_setopt($curl, CURLOPT_URL, $postUrl);

    curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36');

    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

    curl_setopt($curl, CURLOPT_POST, true);

    curl_setopt($curl, CURLOPT_POSTFIELDS, $postData);

    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

    $r = curl_exec($curl);

    curl_close($curl);

    return $r;
}

到这里就OK了,顺便帮他改了下后端的判断流程,不知道原作者在写那堆shi山代码是怎么想的。

人也很爽快,交货后就把钱转过来了,只能说希望下次也合作愉快。

小单日志:修复PHP API接口插图2