如何整合NPI查找?

时间:2016-04-05 06:43:48

标签: jquery ajax

有一个名为NPI注册表查找的网站,它将显示您正在搜索的医生的相关信息。 我收到此错误XMLHttpRequest无法加载https://npiregistry.cms.hhs.gov/api/?number=1306935523。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://localhost:58202”访问。

<script type="text/javascript">
            $(document).ready(function () {              
                $('#btnGetNpi').click(function () {                                 
                    $.ajax({
                        async: true,
                        crossDomain: true,
                        url: 'https://npiregistry.cms.hhs.gov/api/?number=' + $('#txtnpi').val(),
                        method: 'get',                       
                        dataType: 'json',
                        success: function (data) {
                            debugger;
                            resultElement.html('FirstName:' + data.basic[0].first_name);
                        },
                        error: function (jqXHR, exception) {
                            alert(exception);
                        }
                    });
                });
            });
    </script>

2 个答案:

答案 0 :(得分:1)

我只是遇到了同样的问题,不得不破解一个解决方案。这绝不是最终或永久的解决方案,但它确实有效。我将尝试与维护该数据库的人员联系,并让他们知道该数据库已被CORS阻止,因此,作为一个无用的公共API,希望我们可以进行更改。

这就是我最终要做的事情: n.b.您可能没有php,但是我敢打赌其他一些语言也可能有类似的功能。

.js文件:

$.ajax({
    type: 'post',
    url:  'somefile.php',
    data: 'npiNumber=xxxxxxxxxx',
    success: function(response) {
        var npiData = JSON.parse(response);
        console.log(npiData);
    }
});

.php文件

if(isset($_POST['npiNumber'])) {
    echo file_get_contents('https://npiregistry.cms.hhs.gov/api/resultsDemo2/?number='.$_POST['npiNumber']);
}

仅此而已。 php file_get_contents从字面上转到页面并加载它,并返回该页面上任何内容。它不是服务器请求,而仅仅是“给我页面本身的结果”请求。然后,将其传递回javascript,并将其解析为JSON对象。丑陋的骇客。丑。

答案 1 :(得分:0)

我不确定这是否是您正在寻找的,但美国政府有一个免费的API来进行NPI查找,因此您可以从此处提取代码:https://npiregistry.cms.hhs.gov/ 它有一个API链接,显示如何从NPI db请求信息。还有其他几个网站也这样做,所以你可以从他们那里获取代码......

  

应用程序编程接口(API)|只读API是一个新的,   可下载的NPPES数据文件的更快替代品。它允许   系统实时访问NPPES公共数据,而不是通过   批量上传。 API每天从NPPES中检索数据。

     

NPPES Read API交互式测试应用系统管理员可以   使用交互式演示来试验生成查询。该   API将在https://npiregistry.cms.hhs.gov/api/生成其输出。

有几个站点进行NPI查找。看看他们的代码。其他网站也这样做。复制成功的。

那些编程人员应该能够唱歌!