OpenGraph API в ASP.NET один и тот же код на двух компьютерах, дает разные результаты - PullRequest
0 голосов
/ 13 июня 2019

Мы с коллегой работаем над одним проектом и совместно используем каждую строчку кода.Мы поделились им через github, а затем буквально скопировали, вставили с моей машины на свою (бесполезно, я знаю).Код представляет собой форму asp.net, которая принимает URL сайта booking.com, передает его через API opengraph.io и возвращает результаты.Результаты, которые я получаю, как и ожидалось, название отеля, расположение, звезды.Результаты, которые он получает, - это название отеля: «помогите! Какой отель лучше», описание: «какой-то общий текст».Он получает тот же результат независимо от того, в какой URL он вставляет.

        [HttpPost]
        [ValidateInput(false)]
        [ValidateAntiForgeryToken]
        public async Task<ActionResult> Create([Bind(Include = "poiId,city,name,address,website,poiImg,rating,lon,lat,phone,email,category")] POI pOI)
        {
            var url = Uri.EscapeDataString(pOI.website);
            var ogKey = Environment.ExpandEnvironmentVariables(
                    ConfigurationManager.AppSettings["OpenGraphAPI"]);
            var requestUrl = "https://opengraph.io/api/1.1/site/" + url + "?app_id=" + ogKey;
            dynamic ogResults = new Uri(requestUrl).GetDynamicJsonObject();

            pOI.name = Convert.ToString(ogResults.hybridGraph.title);

            pOI.rating = Convert.ToDouble(pOI.name.IndexOf(' '));
            pOI.pOIDescription = Convert.ToString(ogResults.hybridGraph.description);
            pOI.poiImg = Convert.ToString(ogResults.hybridGraph.image);

            string gcUrl = "https://maps.googleapis.com/maps/api/geocode/json?sensor=true&address=";
            string gcKey = Environment.ExpandEnvironmentVariables(
                    ConfigurationManager.AppSettings["GoogleAPI"]);

            string key = "&key=" + gcKey;

            dynamic googleResults = new Uri(gcUrl + pOI.name + key).GetDynamicJsonObject();
            pOI.lon = Convert.ToDouble(googleResults.results[0].geometry.location.lng);
            pOI.lat = Convert.ToDouble(googleResults.results[0].geometry.location.lat);
            pOI.address = Convert.ToString(googleResults.results[0].formatted_address);


            if (ModelState.IsValid)
            {
                db.POIs.Add(pOI);
                await db.SaveChangesAsync();
                return RedirectToAction("Index");
            }

            ViewBag.category = new SelectList(db.Categories, "categoryId", "category1", pOI.category);
            ViewBag.city = new SelectList(db.Cities, "cityId", "city1", pOI.city);
            return View(pOI);
        }

Чтобы сделать вызов API, мы используем точно такой же код, как этот https://pastebin.com/6b2fLChA

Я могу только предположитьЯ сделал некоторые изменения в файлах, которые мы не передаем через github, и забыл все об этом.Если бы кто-нибудь мог дать мне подсказку о том, что искать, что может быть причиной этой проблемы, я был бы очень признателен

...